2014年春计算机等级二级考试C语言笔试试题
第二部分 C语言程序设计
一、选择题(用答题卡答题,答案依次填在21~30答题号内,共10分)
21、以下选项中,不能用作变量名的是____(21)_____。
A. switch B. _0_
C. For D. sqrt
22、已知有声明“int x=1;”,以下语句中有语法错误的是______(22)_______。
A. if(*x) x=1; B. if(!x) x=1;
C. if(x++) x=0; D. if((char)x) x=0;
23、执行程序段“char c=255; c=c+1; printf("%d",c);”后,输出结果为___(23)____。
A. 256 B. -255 C. 1 D. 0
24、以下有关continue语句的描述中正确的是__(24)___。
A. 可以出现在程序中任何位置
B. 只能出现在循环语句中
C. 只能出现在switch语句中
D. 只能出现在循环语句中或switch语句中
25、以下实现“仅当变量a或b的值中只有一个小于c值时输出c值”这一功能的语句中,正确的是__(25)__。
A. if(a
B. if(ac&&a>c||b
C. if(a
D. if(a
26. 以下数组声明中正确的是_______(26)_____。
A. int a[]; B. int a[3.14];
C. int a[2+3]={0}; D. int a[3]={1,2,3,4};
27. 以下选项中,可以正确计算a数组中元素个数的表达式是___(27)_____。
A. a/sizeof(a) B. a[0]/sizeof(a)
C. sizeof(a)/ sizeof(a[0]) D. sizeof(a[0])/ sizeof(a)
28. 函数调用“strcmp("your","your")”的返回值是___(28)________。
A. -1 B. 0 C. 1 D. 2
29. 若要引用结构变量stud1的成员age,以下选项中错误的是___(29)____。
struct student
{ int age;
Int num;
}stud1, *p;
p=&stud1;
A. stud1.age B. p.age C. p->age D. (*p).age
30.已知有外部声明“int a[]={10,20,30,40}; int *pa[]={a+1,a,a+3,a+2};”,表达式*pa[2]的值
是______(30)_____。
A. 10 B. 20 C. 30 D. 40
二、填空题(请将答案填写在答题纸的相应答题号内,每个答案只占一行,共30分)
?基本概念
1、 在C语言源程序中,实型常量3.14是按______(1)___类型存储的。
2、在库函数scanf、printf的声明包含在头文件_______(2)___中。
3、执行语句“int i=0; while(i=0) i=i-1;”后,变量i的值为___(3)___。
4、已知有声明“char s1[]="Hello world";”,执行语句“strcpy(s1+1, "i");puts(s1);”,后的输出是___(4)___。
5、若要用fopen函数打开一个已存在的二进制文件,要求既能读出文件中原有数据也能改写原有数据,则在fopen中中正确的“文件打开方式”是______(5)___。
三、阅读程序(13分)
6、以下程序运行时,若输入“1 5 2 4 3 6”,输出到屏幕的结果是__(6)__。
#include
int main()