最新-2010(上)c语言1-6章测试题 下载本文

精品文档

2008-2009(上)C语言程序设计1-5章测试试题 姓名__________学号__________成绩__________

一、选择题(每小题1分,共60分) 1、 若有以下程序段 int m=0xabc,n=0xabc; m-=n;

printf(\

执行后输出结果是(C )。

A) 0X0 B) 0x0 C) 0 D) 0XABC 2、以下不合法的用户标识符是( C )

A)j2_KEY B)Double C) 4d D) _8_ 3、以下不合法的数值常量是( C )

A)011 B)1e1 C) 8.0E0.5 D) 0xabcd 4、以下不合法的字符常量是 ( A )

A)'\\018' B) '\\”' C) '\\\\' D) ‘\\xcc' 5、表达式3.6-5/2+1.2+5%2的值是 ( D )

A)4.3 B) 4.8 C) 3.3 D) 3.8 6、以下能正确定义字符串的语句是( D )

A)char str[]={‘s',’t’,’r’,’i’,’n’,’g’}; B) char str=”\\x43”; C) char str=”string”; D) char *str=”string”; 7、以下数组定义中错误的是( B )

A) int x[][3]={0}; B) int x[2][3]={{1,2},{3,4},{5,6}}; C) nt x[][3]={{1,2,3},{4,5,6}}; D) int x[2][3]={1,2,3,4,5,6}; 8、若要求从键盘读入含有空格字符的字符串,应使用函数( B ) A)getc() B) gets() C) getchar() D) scanf() 9、 下四个程序中,完全正确的是( B )

A)#include B)#include main(); main()

{/*programming*/ {/*/programming/*/ printf(“programming!\\n”);} printf(“programming!\\n”);} C) #include”stdio.h” D) include main() main()

{/*/*programming*/*/ {/*programming*/ printf(“programming!\\n”);} printf(“programming!\\n”);}

10、若有定义:float x=1.5; int a=1,b=3,c=2;则正确的switch语句是(C ) 精品文档

精品文档

A)switch(x) B) switch((int)x); {case 1.0: printf(“*\\n”); {case 1: printf(“*\\n”); case 2.0: printf(“**\\n”); } case 2: printf(“**\\n”);} C) switch(a+b) D) switch(a+b)

{ case 1: printf(“*\\n”); {case 1: printf(“*\\n”); case 2+1: printf(“**\\n”);} case c: printf(“**\\n”);}

11、若各选项中所用变量已正确定义,函数fun中通过return语句返回一个函数值,以下选项中错误的程序是( A )

A)main() B) float fun(int a,int b){……} {……x=fun(2,10);……} main()

float fun(int a,int b){……} {……x=fun(i,j);……} C) float fun(int,int); D) main()

main() { float fun(int i,int j); {……x=fun(2,10);……} ……x=fun(i,j);……} float fun(int a,int b){……} float fun(int a,int b){……}

12、在以下给出的表达式中,与while(E)中的(E)不等价的表达式是( C) A)(!E=0) B) (E>0||E<0) C) (E==0) D) (E!=0)

13、要求通过while循环不断读入字符,当读入字母N时结束循环。若变量已正确定义,以下正确的程序段是 ( A )

A) while((ch=getchar())!='N') printf(“%c”,ch); B) while(ch=getchar()!='N') printf(“%c”,ch); C) while(ch=getchar()==’N') printf(“%c”,ch); D) while((ch=getchar())=='N') printf(“%c”,ch); 14、有以下程序 #include main() {

char c1,c2,c3,c4,c5,c6;

scanf(“%c%c%c%c”,&c1,&c2,&c3,&c4); c5=getchar(); c6=getchar(); putchar(c1); putchar(c2); printf(“%c%c\\n”,c5,c6);

精品文档

精品文档 }

程序运行后,若从键盘输入(从第1列开始) 123<回车> 45678<回车>

则输出结果是 ( D )

A)1267 B)1256 C)1278 D)1245 15、若有以下程序 main() {int y=10; while(y- -); printf(“y=%d\\n”,y); }

程序运行后的输出结果是 ( A )

A)y=0 B)y=-1 C) y=1 D)while构成无限循环 16、有以下程序 main() {

int a=0,b=0,c=0,d=0; if(a==1) b=1; c=2; else d=3;

printf(“%d,%d,%d,%d\\n”,a,b,c,d); }

程序输出 ( D )

A)0,1,2,0 B) 0,0,0,3 C)1,1,2,0 D)编译有错 17、有以下程序 main() { int i,j,x=0; for(i=0;i<2;i++) { x++;

for(j=0;j<=3;j++) {

if(j%2) continue; x++; } 精品文档