C语言考试题库.doc

上传人:h**** 文档编号:132121 上传时间:2018-07-09 格式:DOC 页数:35 大小:287.50KB
下载 相关 举报
C语言考试题库.doc_第1页
第1页 / 共35页
C语言考试题库.doc_第2页
第2页 / 共35页
C语言考试题库.doc_第3页
第3页 / 共35页
C语言考试题库.doc_第4页
第4页 / 共35页
C语言考试题库.doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

1、 - 1 - C 语言理论上机考试 选择题部分(共 200 题 ,仅针对 11 级定向专业 ) 1、下面程序的输出是 _c_ #include void main() int k=11; printf(“k=%d,k=%o,k=%xn“,k,k,k); A) k=11,k=12,k=11 B) k=11,k=13,k=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b 2、在下列选项中 ,不正确的赋值语句是 _a_. A) +t; B) n1=(n2=(n3=0); C) k=i=j; D) a=b+c=1; 3、下面合法的 C 语言字符常量是 _a_. A) t

2、B) “A“ C) 65 D) A 4、表达式 : 10!=9 的值是 _D_. A) true B) 非零值 C) 0 D) 1 5、 C语言提供的合法的数据类型关键字是 _D _. A) Double B) short C) integer D) Char 6、字符 (char)型数据在微机内存中的存储形式是 A_ _. A) 反码 B) 补码 C) EBCDIC 码 D) ASCII 码 7、 C 语言程序的基本单位是 _C_. A) 程序行 B) 语句 C) 函数 D) 字符 8、设 int a=12,则执行完语句 a+=a-=a*a 后 ,a 的值是_D_ A) 552 B) 264

3、 C) 144 D) -264 9、执行下面程序中的输出语句后 , 输出结果是_A_. #include void main() int a; printf(“%dn“,(a=3*5,a*4,a+5); A) 65 B) 20 C) 15 D) 10 10、下面程序的输出是 _B_. #include void main() int x=023; printf(“%dn“,-x); A) 17 B) 18 C) 23 D) 24 11、下面程序的输出的是 _D_. #include void main() int x=10,y=3; printf(“%dn“,y=x/y); A) 0 B) 1

4、 C) 3 D) 不确定的值 12、已知字母 A的 ASCII 码为十进制的 65,下面程序的输出是 _A_. #include void main() char ch1,ch2; ch1=A+5-3; ch2=A+6-3; printf(“%d,%cn“,ch1,ch2); A) 67,D B) B,C C) C,D D) 不确定的值 13、若要求在 if 后一对圆括号中表示 a 不等于 0 的关系 ,则能正确表示这一关系的表达式为 _B_. A) a=y) 上面程序片段的输出结果是 _A_. A) 200 B) 100 C) 100 200 D) 输出格式符不够 ,输出不确定的值 19、阅

5、读下面的程序 #include void main() char ch; scanf(“%3c“, printf(“%c“,ch); 如果从键盘上输入 abc 则程序的运行结果是 _A_. A) a B) b C) c D) 程序语法出错 20、阅读下面的程序 #include void main() int i,j; i=010; j=9; printf(“%d,%d“,i-j,i+j); 则程序的运行结果是 _D_. A) 1,19 B) -1,19 C) 1,17 D) -1,17 21、阅读下面的程序 #include void main() int i,j,m,n; i=8;j=10

6、; m=+i; n=j+; printf(“%d,%d,%d,%d“,i,j,m,n); 程序的运行结果是 _D_. A) 8,10,8,10 B) 9,11,8,10 C) 9,11,9,10 D) 9,10,9,11 22 、已知 a=12, 则表达式 a+=a-=a*=a 的结果是_a_. A) 0 B) 144 C) 12 D) -264 23、若已定义 int a,则表达式 a=10,a+10,a+的值是_B_. A) 20 B) 10 C) 21 D) 11 24、阅读下面的程序 #include void main() int i,j; scanf(“%3d%2d“, print

7、f(“i=%d,j=%dn“,i,j); 如果从键盘上输入 1234567,则程序的运行结果是 _D_. A) i=123,j=4567 B) i=1234,j=567 C) i=1,j=2 D) i=123,j=45 25、下面程序的输出结果是 _D_. #include void main() int a=-1, b=4, k; k=(+a void main() int a=5,b=3; float x=3.14, y=6.5; printf(“%d,%dn“,a+b!=a-b,x void main() int a=12, b=12; printf(“%d,%dn“,-a,+b); A

8、) 10,10 B) 12,12 C) 11,10 D) 11,13 32、 设有以下语句 :int x=10;x+=3+x%(3),则 x 的值是 ._A_ A) 14 B) 15 C) 11 D) 12 33、 若 d 为 double 型变量 ,则表达式 d=1,d+5,d+的值是 _B_. A) 1 B) 6.0 C) 2.0 D) 1.0 34、 表达式 5!=3 的值是 _C_. A) T B) 非零值 C) 0 D) 1 35、 若有定义 int a=12,n=5,则表达式 a%=(n%2)运算后 ,a 的值 _A_. A) 0 B) 1 C) 12 D) 6 36、 若有定义

9、int x=3,y=2 和 float a=2.5,b=3.5,则表达式 :(x+y)%2+(int)a/(int)b 的值是 _D_. A) 0 B) 2 C) 1.5 D) 1 37、 在 C 语言中 ,以下叙述不正确的是 _. A) 在 C程序中 ,无论是整数还是实数 ,都能被准确无误的表示 B) 在 C 程序中 ,变量名代表存储器中的一个位置 C) 静态变量的生存期与整个程序的生存期相同 D) C 语言中变量必须先定义后引用 38、 C 语言中的变量名只能由字母 ,数字和下划线三种字符组成 ,且第一个字符 _A_. A) 必须为字母 B) 必须为下划线 C) 必须为字母或下划线 D)

10、可以是字母 ,数字或下划线中的任意一种 39、 设有说明 :char w; int x; float y; double z; 则表达式 : w*x+z-y 值的数据类型是 _D_. c语言中 两个不同类型的运算 要转化成同类型的 转换从低到高 charfloatshortintdouble A) float B) char C) int D) double 40、 一个 C 语言的执行是从 _C_. A) 本程序的主函数开始 ,到本程序的主函数结束 B) 本程序的第一个函数开始 ,到本程序的最后一个函数结束 C) 本程序的主函数开始 ,到本程序的最后一个函数结束 D) 本 程序的第一个函数开

11、始 ,到本程序的主函数结束 41、 设 a 为整型变量 ,不能正确表达数学关系 1010 if (a“,则程序的输出结果是 _A_. #include void main( ) int x,y; - 4 - scanf(“%d,%d“, if (x=y) printf(“x=y“); else if (xy) printf(“xy“); else printf(“x3 C) xy D) x“,则输出结果是 _C_ _. #include void main( ) int a,b,c; scanf(“%d,%d,%d“, if (ab) if (ac) printf(“%dn“,a); else

12、 printf(“%dn“,c); else if (bc) printf(“%dn“,b); else printf(“%dn“,c); A) 5 B) 6 C) 7 D) 不定值 46、 执行下面程序时 ,若从键盘输入 “2“,则程序的运行结果是 _A_. #include void main( ) int k; char cp; cp=getchar( ); /*作用是把键盘敲的字符赋给 a*/ if (cp=0 scanf(“%f“, if (a void main( ) int x=41,y=1; if (x%3=0 printf(“y=%dn“,y); else y=x;print

13、f(“y=%d“,y); A) y=41 B) y=43 C) y=42 D) y=1 49、 运行下面程序时 , 从键盘输入 “12,34,9“, 则输出结果是 _C_. #include void main( ) int x,y,z; scanf(“%d,%d,%d“, if (x void main( ) char ch; ch=getchar( ); switch(ch) case H:printf(“Hello!n“); case G:printf(“Good morning!n“); default:printf(“Bye_Bye!n“); A) Hello! B) Hello!

14、Good Morning! - 5 - C) Hello! D) Hello! Good morning! Bye_Bye! Bye_Bye! 51、 执行下列程序段后的输出结果是 _A_ int x=1,y=1,z=1; x+=y+=z; printf(“%dn“,x=A if (x“,则程序的输出结果是 _S_. #include void main( ) int a ; scanf(“%d“, if (a+5)printf(“%dn“,a); else printf(“%dn“,a-) ; A) 7 B) 6 C) 5 D) 4 55、 运行下面程序时,若从键盘输入 “3, 4 “,则程

15、序的输出结果是 _B_. #include void main( ) int a,b,s; scanf(“%d,%d“, s=a; if (s void main( ) int x=0,y=1,z=0; if (x=z=y) x=3; printf(“%d,%dn“,x,z); A) 3,0 B) 0,0 C) 0,1 D) 3,1 57、 假定等级和分数有以下对应关系: 等级: A 分数: 85 100 等级: B 分数: 60 84 等级: C 分数: 60 以下 对于等级 grade 输出相应的分数区间,能够完成该功能的程序段是 _. A) switch (grade) case A:p

16、rintf(“85-100n“); case B:printf(“60-84n“); case C:printf(“60 以下 n“); default:printf(“等级错误 !n“); B) switch (grade) case A:printf(“85-100n“);break; case B:printf(“60-84n“); case C:printf(“60 以下 n“); default:printf(“ 等级错误 !n“); C) switch (grade) case A:printf(“85-100n“);break; case B:printf(“60-84n“);b

17、reak; case C:printf(“60 以下 n“); default:printf(“等级错误 !n“); D) switch (grade) case A:printf(“85-100n“);break; case B:printf(“60-84n“);break; case C:printf(“60 以下 n“);break; default:printf(“等级错误 !n“); 58、 能够完成如下函数计算的程序段是 _. -1 x0 - 6 - A) y=1; B) if (x=0) if(x!=0) if(x0) y=1; if(x0) y=1; else y=0; els

18、e y=0; else y=-1; C) y=0; D) y=-1; if (x=0) if (x0) y=1; if (x0) y=1; else y=0; else y=-1; 59、 有如下程序 #include void main( ) float x=5.0,y; if(x void main( ) int x=1,y=0; switch (x) case 1: switch (y) case 0:printf(“firstn“);break; case 1:printf(“secondn“);break; case 2:printf(“thirdn“); A) first B) f

19、irst second third C) first D) second third 61、以下程序的执行结果是 _. #include void main( ) int a,b,c,d,x; a=c=0; b=1; d=20; if (a) d=d-10; else if(!b) if (!c) x=15; else x=25; printf(“d=%dn“,d); A) d=20 B) d=10 C) d=15 D) 25 62、 有如下程序 : #include void main( ) int a=2,b=-1,c=2; if (a void main( ) int x,y=1,z;

20、if (z=y) void main( ) int x=1,a=0,b=0; switch(x) case 0: b+; case 1: a+; case 2: a+;b+; printf(“a=%d,b=%dn“,a,b); 该程序的输出结果是 _. A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=2 65、 下面程序的输出结果是 _. - 7 - #include void main( ) int a=-1,b=1,k; if (+a100) printf(“%dn“,a100); else printf(“%dn“,a void main( ) int

21、 n; scanf(“%d“, if (n+ void main( ) int m=4; if (+m5) printf(“%dn“,m-); else printf(“%dn“,-m); A) 7 B) 6 C) 5 D) 4 70、 若执行下面的程序从键盘上输入 5,则输出结果是 . #include void main( ) int x; scanf(“%d“, if (x+5) printf(“%dn“,x); else printf(“%dn“,x-); A) 7 B) 6 C) 5 D) 4 71、 以下程序段运行结果是 _. int x=1,y=1,z=-1; x+=y+=z;

22、printf(“%dn“,x void main( ) int a,b,c=246; a=c/100%9; b=(-1) printf(“%d,%dn“,a,b); 输出结果是 _. A) 2,1 B) 3,2 C) 4,3 D) 2,-1 73、 运行下面程序时,若从键盘输入数据为 “123“, 则输出结果是 _. #include “stdio.h“ void main() int num,i,j,k,place; scanf(“%d“, if (num99) place=3; else if(num9) place=2; else place=1; i=num/100; j=(num-i

23、*100)/10; k=(num-i*100-j*10); switch (place) case 3: printf(“%d%d%dn“,k,j,i); break; case 2: printf(“%d%dn“,k,j); break; case 1: printf(“%dn“,k); A) 123 B) 1,2,3 C) 321 D) 3,2,1 74、 执行下列程序后的输出结果是 _. #include - 8 - void main( ) int k=4,a=3,b=2,c=1; printf(“%dn“,k void main( ) int a,b; scanf(“%d“, b=a

24、15?a+10:a-10; printf(“%dn“,b) ; A) 5 B) 25 C) 15 D) 10 77、 运行下面程序后 ,输出是 _. #include void main( ) int k=-3; if (k void main( ) int a=5,b=0,c=0; if (a=a+b) printf(“*n“); else printf(“#n“); A) 有语法错误不能编译 B) 能通过编译,但不能通过连接 C) 输出 * D) 输出 # 79、 为了避免嵌套的 if-else 语句的二义性, C 语言规定 else 总是与 _组成配对关系 . A) 缩排位置相同的 if

25、 B) 在其之前未配对的 if C) 在其之前尚未配对的最近的 if D) 同一行上的 if 80、 设 x 、 y 、 z 、 t 均为 int 型变量 ,则执行以下语句后 ,t 的值为 _. x=y=z=1; t=+x | +y A) 不定值 B) 4 C) 1 D) 0 81、 以下程序段 _. x=-1; do x=x*x; while (!x); A)是死循环 B)循环执行两次 C)循环执行一次 D)有语法错误 82、 对下面程序段描述正确的是 _. int x=0,s=0; while (!x!=0) s+=+x; printf(“%d“,s); A) 运行程序段 后输出 0 B)

26、 运行程序段后输出 1 C) 程序段中的控制表达式是非法的 D) 程序段循环无数次 83、 下面程序段的输出结果是 _. x=3; do y=x-; if (!y) printf(“*“);continue; printf(“#“); while(x=2); A) # B) #* C) 死循环 D)输出错误信息 84、 下面程序的运行结果是 _. #include void main( ) int a=1,b=10; do b-=a;a+; while(b- void main() int s=0,i=1; while (s void main( ) double s=0.0; int i,n

27、; scanf(“%ld“, for(i=1;i3;x-) if(x%3) x-; -x; -x; printf(“%d “,x); A) 6 3 B) 7 4 C) 6 2 D) 7 3 90、 下面程序的运行结果是 _. #include void main( ) int a,b; a=-1; b=0; do +a; +a; b+=a; while(a void main( ) int n=4; while (n-) printf(“%d “,n-); A) 2 0 B) 3 1 C) 3 2 1 D) 2 1 0 93、 以下程序运行后的输出结果是 _. #include void ma

28、in() int i=10,j=0; do j=j+1; i-; while(i2); printf(“%dn“,j); A) 50 B) 52 C) 51 D) 8 94、 以下函数的功能是 : 求 x 的 y 次方 , 请填空 ._ #include void main() int i,x,y; double z; scanf(“%d %d“, for(i=1,z=x;i void main() int x=23; do printf(“%d“,x-); while(!x); 该程序的执行结果是 _ A) 321 B) 23 C) 不输出任何内容 D) 陷入死循环 96、 以下程序段的执行

29、结果是 _. int i,j,m=0; for(i=1;i void main( ) int i; for(i=1;i void main( ) int x=10,y=10,i; for(i=0;x8;y=+i) printf(“%d %d “,x-,y); A) 10 1 9 2 B) 9 8 7 6 C) 10 9 9 0 D) 10 10 9 1 99、 执行以下程序后 , 输出的结果是 _. #include void main( ) int y=10; do y-; while (-y); printf(“%dn“,y-); A) -1 B) 1 C) 8 D) 0 100、 有如下

30、程序 #include void main( ) int n=9; while(n6) n-;printf(“%d“,n); 该程序段的输出结果是 _. A) 987 B) 876 C) 8765 D) 9876 101、 有如下程序 #include void main( ) int i,sum=0; for(i=1;i void main( ) int i,j; for(i=0,j=1; i,则输出为 _. #include void main( ) char ch; while (ch=getchar( )!=n) if (ch=A printf(“%c“,ch); printf(“n“); A) ABCdef B) abcDEF C) abc D) DEF 104、 下面程序的输出结果是 _. main( )

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 教育教学资料库 > 参考答案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。