C语言预赛试题 联系客服

发布时间 : 星期二 文章C语言预赛试题更新完毕开始阅读

一、单选题(共60小题,每题1分,共60分)

1. 执行下列程序中的输出语句后,x的值是______。(知识点3.10)

main() {int x ;

printf(“%d\\n”,(x=5*6,x*2,x+20));} A)30 B)60 C)50 D)80 2. 下列程序的输出结果是_______。(知识点3.8) main()

{int x=1,y=0,z; z=(x<=0)&&(y- ->=0); printf(“%d %d% d%\\n”,z,x,y) ;}

A)0 -1 -1 B)0 -1 0 C)0 1 0 D)0 1 -1

3. 在C语言中,下列选项属于合法的长整型常数的是_______。(知识点3.3) A)0L B)1234567 C)0.0234567 D)3.14159e3 4. 下列选项中属于不正确的赋值语句的是_____。 (知识点3.6) A)t++; B)n1=(n2=(n3=0)); C)k=i= =j; D)a=b,c=1;

5. 若有定义:int a,b;char x,y;并有以下输入数据: 14 22 XxYy (回车) 则能给a赋整数14,给b赋整数22,给x赋字符x,给y赋字符y的正确程序段是________。 (知识点4.2)

A) scanf(“%d %d”,&a,&b); x=getchar();y=getchar();

B) scanf(“%d%d %c %c”, &a, &b,&x,&x,&y,&y); C) scanf(“%d %d %c%c%c %c”, &a,&b,&x,&x,&y,&y); D) scanf(“%d%d %c %c”, &a, &b,&x,&y); 6. 下列转义字符不正确的是_______。(知识点3. 5) A)?\\\\? B)?\\? C)?\\053? D)?\\0?

7. 下列选项可作为C语言赋值语句的是_______。(知识点4.2) A)x=3,y=5 B)a=b=6 C)i- -; D)y=int(x);

8. 当c的值不为0时,下列选项中能正确将c的值赋给变量a、b的是_______。(知识点

5.2)

1

A)c=b=a; B)(a=c)‖(b=c); C)(a=c)&&(b=c); D)a=c=b; 9. 有以下程序: main() { unsigned int a ; int b=-1; a=b;

printf(“%u”,a);}

该程序运行后的输出结果是_______。(知识点4.5)

A)-1 B)65535 C)32767 D)-32768

10. 若x、b、m、n均为int型变量,执行下面语句后b的值为_______。(知识点3.10) m=20;n=6;

x=(- -m= =n++)?- -m:++n; b=m++;

A)11 B)6 C)19 D)18 11. 有以下程序: main()

{ int a=111,b=222; printf(“%d\\n”,a,b); }

该程序运行后的输出结果是_______。(知识点4.5) A)错误信息 B)111 C)222 D)111,222 12. 以下程序的输出结果是_______。(知识点4.5) main() { int a=2,c=5;

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

A) a=%2,b=%5 B) a=2,b=5 C) a=%%%d,b=%%%d D) a=%%d,b=%%d 13. 对于浮点型变量f,能实现对f中的值在小数点后第三位进行四舍五入的表达式是

_______。(知识点3.8)

A)f=(f*100+0.5)/100.0 B)f=(f*100+0.5)/100 C)f=(int)(f*100+0.5)/100.0 D)f=(f/100+0.5)*100

2

14. 设 a=5, b=6, c=7, d=8, m=2, n=2, 执行(m=a>b)&&(n=c>d) 后m,n的值为______。(知识

点5.2)

A) 2,2 B) 2,0 C) 0,2 D) 0,0

15. 语句printf(“%d\\n”,strlen(“asd\\n\\x12\\1\\\\”));的输出结果是______。(知识点7.3) A) 9 B) 11 C) 7 D) 8 16. 有以下程序: main( ) {

int y=1234;

printf(“y=m”,y); printf(“y=%+06d\\n”,y); }

该程序的运行结果是______。(知识点4.5)

A) y= 1234y=001234 B) y= 1234y=+01234 C) y=1234y=+01234 D) y= 1234y=1234

17. 语句:printf(“%d”, !9);的输出结果是______。(知识点5.2) A) 0 B) 1 C) 有语法错误 ,不能执行 D) -9

18. 已有定义语句:int x=6,y=4,z=5;执行以下语句后,能正确表示x、y、z值的选项是

______。(知识点5.3) if(x

A) x=4,y=5,z=6 B) x=4,y=6,z=6 C) x=4,y=5,z=5 D) x=5,y=6,z=4

19. 下列选项中属于正确的switch语句的是______。(知识点5.4) A)switch(1.0) B)swicth(1)

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

{ case 1 :printf(“A\\n”); { case “a” :printf(“A\\n”); case 1+2 :printf(“B\\n”);} case “b” :printf(“B\\n”);} 20. 若k为int型变量,以下语句段执行后的输出结果是______。(知识点5.3)

3

k=-3;

if(k<=0) printf(“####”) else printf(“****”);

A) #### B) **** C) ####**** D) 有语法错误 ,不能执行

21. 当a=2,b=3,c=4,d=5时, 执行下面一段程序后x的值为_____。(知识点5.3) if(a>b)

if(c

if(b>d)x=2 ;

else x=3 ; else x=4 ; else x=5 ;

A)2 B)3 C)4 D)5

22. 下列程序的运行结果是________。(知识点6.3) main() { int y=10;

do { y- - ;} while(- -y); printf(“%d\\n”,y- -);}

A)-1 B)1 C)8 D)0 23. 下列程序的运行结果是________。(知识点6.5) # include main() { int i ;

for(i=1;i<=5;i++) { if(i %2)printf(“*”); else continue ; printf(“#”); }

4