2012上C语言程序设计A卷+答案 下载本文

内容发布更新时间 : 2024/11/8 0:13:52星期一 下面是文章的全部内容请认真阅读。

中国地质大学(武汉)课程考核试卷 教务处制 版本:2011.5

试卷类别

A □

使用学期

考核内容: 2012春 课程名称: 计算机高级语言程序设计(C) 学时: 56 考核方式:笔试开卷□ 笔试闭卷□ 口试□ 其它 辅助工具:可用□ 工具名称: 不可用□ 装

命题人签字

审题人签字

审定人签字

考生学号

线

考生姓名

所在班级

一、单项选择 (每题2分,共30分) 1. 以下不合法的程序结构是__( )_ 。 A)只有一个主函数 B) 只有一个普通函数 C)一个主函数和一个普通函数 D)一个主函数和多个普通函数 2.以下选项中,均符合C常量形式的是__( )_ 。 A) e5, 0123 B) 0xffce, ?\\n? C) 02468, 0.1e-5 D) 0xfhc, 123 3.假定 int a=0, b=1; 表达式: !(a=?0?) && b--, a+b 的值是 ( ) 。 A) 0 B) 1 C) 48 D) 49 4.假定 int a=2, b=3, c=0; 表达式: (a==b>1)+(a&&!c)+b/a*2.0 的值是 ( ) 。 A) 2.0 B) 3.0 C) 4.0 D) 5.0 5.设有定义:float a=2,b=4,h=3;以下C语言表达式与代数式计算结果不相符的是 ( ) 。 A)(a+b)*h/2 B)(1/2)*(a+b)*h C)(a+b)*h*1/2 D)h/2*(a+b) 6.字符串“ab\\\\0\\128”的长度是 ( ) 。 A) 4 B) 5 C) 6 D) 7 7.以下不能正确表达三个非零变量a,b,c的和为零的表达式是__( )_ 。 A)!(a+b+c)&&a&&b&&c B)(a+b+c==0)&&a&&b C)!(a+b+c)*a*b*c D)(a+b+c==0)&&!(a||b||c) 8. 以下各循环语句中,不是无限循环的是__( )_ 。 A) for(k=-1; -10

10. 对于函数f的功能,以下各项描述中,正确的是__( )_ 。 int f ( int n ) { int s=0; while(n) {s+=n; n/=10;} return (s==10); } A) 求整数n的各位数字之和 B) 判断n的各位数字之和是否等于10,等于10时返回1,否则返回0 C) 判断n的各位数字之和是否等于10,等于10时返回0,否则返回1 D) 无论n是多少,函数的返回值都是10 11. 有关for语句中的第二个表达式,以下各项描述中正确的是 __( )_ 。 A) 只能用逻辑表达式 B) 只能用关系表达式 C) 只能用逻辑表达式或关系表达式 D) 可用任意表达式 12. 以下选项中正确的语句组是 ( ) 。 A) char s[ ]; s=\ \ B) char *s; s={\ \C) char s[10]; s=\ \ D) char *s; s=\ \13. 设有定义:int a=1,b=2,c=3;,以下语句中执行效果与其他三个不同的是__( )_ 。 A) if(a>b) c=a,a=b,b=c; B) if(a>b){c=a,a=b,b=c;} C) if(a>b) c=a;a=b;b=c; D) if(a>b){c=a;a=b;b=c;} 14.以下程序的功能是__( )_ 。 main() { int i; float t=1,s=t; for( i=2; i<5; i++) { t= -t/i; s+=t; } printf (\} A) 求 1/1-1/2+1/3-1/4 的值 B) 求 1/1!-1/2!+1/3!-1/4! 的值 C) 求 -1/1+1/2-1/3+1/4 的值 D) 求 -1/1!+1/2!-1/3!+1/4! 的值 15.以下程序的功能是__( )_ 。 main() { int a[10]={3,5,2,9,1,8,0,2,4,6},i,p=0,q=0; for(i=0;i<10;i++) { if(a[i]>p) p=a[i]; if(a[i]

订 线 考生学号

考生姓名

所在班级

二、程序阅读题 (每题4分,共40分) 16.以下程序的运行结果是__( )_ 。 main() { int i,n=0; for( i=1; i<=10; i++) if(!(i%2)&&i%3) n++; printf (\} A) 2 B)4 C)6 D)8 17. 以下程序的运行结果是__( )_ 。 main() { int a=-1, b=0, c = 1, m=0, n=0, k; k=(n=ab>a); printf (\} A) 0, 0 B) 0, 1 C) 1, 0 D) 1, 1 18. 以下程序的运行结果是__( )_ 。 int a=3, b=5; f ( int a ) { a++; b+=a;} main() { int a=6; f (a-1); printf(\A) 3,8 B) 3,11 C) 6,8 D) 6,11 19. 以下程序的运行结果是__( )_ 。 main() f ( int b[], int x) { int a[2]={2,4}, x=5; { x++; f (a,x); b[0]+=2; printf (“\\n %d,%d,%d”,x,a[0],a[1]); b[1]+=3; } } A) 5,2,4 B) 6,4,7 C) 6,2,4 D) 5,4,7 20. 以下程序的运行结果是 ( ) 。 main() { int i, j, s1=0, s2=0, a[3][3]={1,2,3,4,5,6,7,8,9}; for ( i=0; i<3; i++ ) for ( j=i+1; j<3; j++ ) { s1 += a[i][j]; s2 += a[j][i]; } printf ( \} A) 26,34 B) 34,26 C) 11,19 D) 19,11 第 3 页 共 6 页