C语言题集word版

上传人:仙*** 文档编号:131880557 上传时间:2022-08-07 格式:DOC 页数:49 大小:164.02KB
收藏 版权申诉 举报 下载
C语言题集word版_第1页
第1页 / 共49页
C语言题集word版_第2页
第2页 / 共49页
C语言题集word版_第3页
第3页 / 共49页
资源描述:

《C语言题集word版》由会员分享,可在线阅读,更多相关《C语言题集word版(49页珍藏版)》请在装配图网上搜索。

1、目 录第三章 数据类型第四章 顺序程序设计第五章 选择结构程序设计第六章 循环控制第七章 数 组第八章 函 数第九章 预处理命令第十章 指 针 第十一章 结构体与共用体第十二章 位运算第十三章 文 件第三章 数据类型一、单选题1. 下列选项中,合法的C语言关键字是( ) VAR char integer default单选d2. 下列语句中符合C语言语法的赋值语句是( ) a=7+b+c=a+7; a=7+b+=a+7;a=7+b,b+,a+7; a=5+b,c=a+5;单选d3. 下面程序的输出是 main() int x=023; printf(%dn,-x); 17182324单选b4.

2、 下面程序的输出是( ) main( ) int x=023;printf(%dn,-x);17182324单选b5. 若 int a=3; int b=4; int d; d=(a=(b,5),a+b),90; 则d的值是( )90379单选d6. 一个字长的二进制位数是( )81632 随着计算机系统的不同而不同单选d7. 已知在ASCII代码中,字母A的序号为65,以下程序的输出的结果是 #include main() char c1=A, c2=Y;printf(%d,%dn,c1,c2); 因输出格式不合法,输出错误信息 65,90 A,Y 65,Y 65,89单选d8. 已知字母A

3、的ASCII码为十进制的65,下面程序的输出是()main( ) char ch1,ch2; ch1=A+5-2; ch2=A+6-2; printf(%d,%cn,ch1,ch2); 68,E B,C C,D 不确定的值单选a9. 以下程序的输出结果是 #include #include main( ) int a=1,b=4,c=2; float x=10.5 , y=4.0 , z; z=(a+b)/c+sqrt(double)y)*1.2/c+x; pritnf(%.1fn,z); 14.00000015.413.714.9单选c10. 以下程序的输出结果是 #include main

4、( ) int i=010 , j = 10; printf(%d,%dn,+i , j-); 11,10 9,10 010,9 10,9 单选b11. 以下程序的输出结果是( ) main( ) int a=1; a+=(a=8); printf(%dn,a);16189单选a12. 以下程序的输出结果是( ) f(int b ,int m,int n) int i,s=0; for(i=m;in;i=i+2) s=s+bi; return s; main( ) int x,a =1,2,3,4,5,6,7,8,9; x=f(a,3,7); printf(%dn,x); 1018815单选a

5、13. 以下程序的输出结果是()#include#includemain( ) int a=1,b=4,c=2; float x=10.6,y=4.0,z; z=(a+b)/c+sqrt(double)y)*1.2/c+x; printf(%.1fn,z);1415.413.813.9单选c14. 以下说法下确的是( ) C语言程序总是从第一个的函数开始执行 在C语言程序中,要调用的函数必须在main( )函数中定义 C语言程序总是从main( )函数开始执行 C语言程序中的main( )函数必须放在程序的开始部分单选c15. 以下选项中属于C语言的数据类型的( ) 复数型 逻辑型 双精度型

6、集合型单选c16. 在C语言中,不正确的INT类型的常数是( )32768037 0XAF单选a17. 在C语言中,要求运算数必须是整型的运算符是 % / !单选a18. 在C语言中,属于单目运算符的是( ) / 5) printf(%dn,x); else printf(%dn,x-); 7654单选b29. 设有如下定义: int x=10,y=3,z; 则语句 printf(%dn,z=(x%y,x/y); 的输出结果是 1043单选d30. 已知字母A的ASCII码为十进制的65,下面程序的输出是 main( ) char ch1,ch2; ch1=A+5-3; ch2=A+6-3;

7、printf(%d,%cn,ch1,ch2); 67,D B,C C,D 不确定的值单选a31. 以下程序的输出结果是 # include main() printf(%dn,NULL); 不确定的 0-11单选b32. c语言是()语言 高级语言 中级语言 机器语言 汇编语言单选A二、多选题33. 下面表示正确的是( ) c语言中的逗号是一种运算符在C语言中,一行可以有多个语句C中的变量不区分大小写 c中的关键字可以做为变量名多选a, b34. C语言中的标志符只能由字母、数字和下划线三种字符组成,且第一个字符必须是字母可以是下划线必须为字母或下划线可以是字母、数字和下划线中任一种字符多选b

8、, d35. 结构化程序设计所规定的三种基本控制结构是( )顺序选择循环处理多选a, b, c36. 设x,y均为float型变量,则以下合法的赋值语句是+x y=(x%2)/10x*=y+8x=y=0多选a, c, d37. 下列为c语言的关键字是( )ifstructuniontypedef多选a, b, c, d38. 下列选项中,合法的C语言关键字是VARcharintegerdefault多选b, d39. 下面那些为合法整型常量( )1600xe06680x多选a, b40. 下面四个选项中合法的字符常量是( )i+(+i)i=i+1 i+=1多选a, b, c, d41. 以下表

9、达式中正确的是( )c=c+1 a+=1 xy ?x:ya-+=3多选a, b, c三、判断题42. c语言是低级语言对错判断b43. C语言中,整形常数表示的方法有3种对错判断a44. 表达式a=a+b可以写成a+=b对错判断a45. 在C语言中,变量不区分大小写对错判断b46. 在运算时,当出现溢出时,系统直接报错对错判断b第四章 顺序程序设计一、单选题1. 若定义 int m=7,n=12; 则能得到值为3的表达式是( ) n%=(m%=5) n%=(m-m%5) n%=m-m%5 (n%=m)-(m%=5)单选d2. 若已定义x和y为double类型,则表达式:x=1,y=x+3/2的

10、值是 122.02.5单选c3. 若有以下定义和语句 char c1=b,c2=e; printf(%d,%cn,c2-c1,c2-a+A); 则输出结果是 2,M 3,E 2,E 输出项与对应的格式控制不一致,输出结果不确定单选b4. 若有以下定义和语句: int u=010,v=0x10,w=10; printf(%d,%d,%dn,u,v,w); 则输出结果是 8,16,10 10,10,10 8,8,10 8,10,10单选a5. 若执行下面的程序时从键盘上输入12,则输出是( ) main( ) int x; scanf(%d,&x); if(x+5) printf(%dn,x);

11、else printf(%dn,x-);13141516单选a6. 设 int a=12,则执行完语句 a+=a-=a*a后,a的值是 552 264144264单选d7. 以下选项中,与k=n+完全等价的表达式是k=n,n=n1n=n+1,k=nk=+nk+=-n+1单选a8. 设有语句char a=72;则变量a 包含1个字符 包含2个字符 包含3个字符 说明不合法单选a9. 设有语句int a=3;则执行了语句a+=a-=a*a;后,变量a的值是 3 09-12单选d10. 十进制数1385转换成十六进制数为( )568569 D85 D55单选b11. 下面程序的输出是 main()

12、int a=-1, b=4,k; k=(a+=0)&(!(b-=0); printf(%d %d %dn,k,a,b); 0 0 3 0 1 2 1 0 3 1 1 2单选c12. 若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值( ) -12431单选A13. 以下程序的输出结果是 #include main() int a=2,c=5; printf(a=%d,b=%dn,a,c); a=%2,b=%5 a=2,b=5 a=%d,b=%da=%d,b=%d单选d14. 在C语言中,如果下面的变量都是int类型,则输出的结果是 sum=pad=5; pad=sum+

13、,pad+ , +pad;printf(%dn,pad);7 6 54单选a15. 设int i=2,j=1,k=3,则表达式i&(i+j)&k|i+j的值是0123单选B16. 下面程序的输出是 main() int x=10,y=3; printf(%dn,y=x/y);013 不确定的值单选c17. 请选出合法的C语言赋值语句a=b=58i+;a=58,b=58k=int(a+b);单选b18. 若有定义:int a=16,b=10,c;,执行语句c=a/b+0.4后,c的值为()1.4120单选b二、多选题19. putchar函数可以向终端输出一个整型变量表达式实型变量值字符字符型变

14、量值多选c, d20. 若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”。则以下能满足要求的表达式是:A%2= =1!(A%2=0)!(A%2)A%2多选a, b, d三、判断题21. 以下程序的输出结果是 12 main( ) int a=3; printf(%dn,(a+a-=a*a) ); 对错判断b22. 以下程序运行后的输出结果是 3e9,1753void main( ) int number=1001; printf(%x,%o,number,number);对错判断b23. 假定x和y为double型,则表达式x=2,y=x+3/2的值是 3对错判断

15、b24. 设x、y均为整型变量,且x=10 y=3,则以下语句的输出结果是 10,2 printf(%d,%dn,x-,-y); 对错判断a25. 以下程序的输出结果是16 main( ) int a=0; a+=(a=8); printf(%dn,a); 对错判断a26. 以下程序的输出结果是261 main( ) int a=177; printf(%on,a);对错判断a27. 以下程序输出的结果是1#include void main() int a=5,b=4,c=3,d;d=(abc);printf(%dn,d); 对错判断b28. 以下程序运行后的输出结果是 2,2 void m

16、ain( ) int x,y,z; x=1; y=1; z=1; x=x|y&z; printf(%d,%dn,x,x&!y|z);对错判断b第五章 选择结构程序设计一、单选题1. 若要求在if后一对圆括号表示a不等于0的关系,则能正确表示这一关系的表达式( ) a0 !a a=0 a单选d2. 若执行下面的程序时从键盘上输入3和4,则输出是 main( ) int a,b,s; scanf(%d %d,&a,&b); s=a; if(ab)s=b; s=s*s; printf(%dn,s);14 161820单选b3. 若执行下面的程序是从键盘上输入5和6,则输出是( )main() int

17、 a,b,s; scanf(%d%d,&a,&b); s=a; if(ab) s=b; s=s*s;printf(%dn,s);14366332单选b4. 若执行以下程序时键盘上输入9,则输出结果是( )。main( ) int n; scanf(%d,&n); if(n+10) printf(%dn,n);else printf(%dn,n-);111098单选b5. 若w=1,x=2,y=3,z=4,则条件表达式wx?w:yz?y:z的值是( )4321单选d6. 下面程序的输出是 main( ) int x=100, a=10, b=20, ok1=5, ok2=0; if(a=10或a

18、=10 or a=0|a=10 & a=10 | a=0单选d10. 以下程序的输出结果是 #include main() int a ,b,d=241; a=d/100%9; b=(-1)&(-1); printf(%d,%dn,a,b); 6,12,1 6,0 2,0单选b11. 以下程序输出的结果是( ) main( ) int a=5,b=4,c=3,d; d=(abc); printf(%dn,d); 5130单选d12. 以下的程序的输出的结果是( ) main() int a=58; scanf(%d,&a); if(a50) printf(%d,a); if(a40) prin

19、tf(%,a); if(a30) printf(%d,a); 58 58 58 58 58 58585858单选c13. 两次运行下面的程序,如果从键盘上分别输入8和9,则输出结果是()main( ) int x; scanf(%d,&x); if(x-6) printf(%d,x); else printf(%dn,x-); 7和8 8和9 9和10 10和11单选a14. 有如下程序 main() int a=2,b=-1,c=2; if(ab) if(b0) c=0; else c+; printf(%dn,c); 0123单选c15. 语句:printf(“%d”,(a=2)&(b=-

20、2);的输出结果是( ) 无输出 结果不确定-11单选d16. 若整型变量a、b、c、d中的值依次为:1、4、3、2。则条件表达式ab?a:c0; y-) if(y%3=0) printf(%d, -y);continue; 741852963875421单选b2. 若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是 for (i=5;i0;i-) for(j=0;j0;y-) if(y%3=0) printf(%d,-y);continue; 416352875421单选c4. 下面的程序 main() int x=3; do printf(%dn,x-=2); while(

21、!(-x); 输出的是1 输出的是1和-2 输出的是3和0 是死循环单选b5. 以下程序的输出结果是 #include main() int i; for( i=1;i=5;i + + ) if ( i%2 ) printf(*); else continue; printf(#); printf($n); *#*#*#$ #*#*#*$ *#*#$ #*#*$单选a6. 以下程序的输出结果是( ) main( ) int s,i; for(s=0,i=1;i3;i+,s+=i); printf(%dn,s); 1356单选c7. 以下的for循环是 for(x=0,y=0; (y!=123)

22、&(x4); x + + ); 是无限循环 循环次数不定 执行4次 执行3次单选c8. 有如下的程序#include int a=10,c=99; while(a-100) a+;c+;printf(%d,%d,a,c); 则输出的结果是( )10102 10,99 9,100 9,99单选D9有下列程序段( )。 int k=0 while(k=1) k+; while循环执行的次数是 无数次 有语法错,不能执行 一次也不执行 执行一次单选a9. 在C语言中下面的叙述正确的是不能使用do-while语句构成的循环do-while语句构成的循环必须用break语句才能退出 do-while语句

23、构成的循环,当while语句中的表达式值为非零时结束循环do-while语句构成的循环,当while语句中的表达式值为零时结束循环单选d10. 执行下面程序片段的结果是 int x=23; do printf(%2d,x-); while(!x); 打印出321 打印出23 不打印任何内容 陷入死循环单选b11. 执行下面的程序后,a的值为( )main() int a,b; for(a=1,b=1;a=20) break; if(b%8=1) b+=3;continue; b-=5; printf(%d,a);100101103105单选b12. 有以下程序main( )int p8=11,

24、12,13,14,15,16,17,18,i=0,j=0;while(i+7) if(pi%2) j+=pi;printf(%dn,j);程序运行后的输出结果是42455660单选B13. 语句while(!E);中的条件!E等价于 E = 0 E!=1 E!=0 E单选a14. 以下程序的输出结果是( ) #include void main() int a=0,i; for(i=1;i5;i+) switch(i) case 0: case 3: a+=3; case 1: case 2:a+=3; default:a+=5;printf(%d,a);32131020单选a15. 语言中(

25、) 能使用do-while语句构成的循环 do-while语句构成的循环必须用break语句才能退出 do-while语句构成的循环,当while语句中的表达式为非零时结束循环 do-while语句构成的循环,当while语句中的表达式值小于零时结束循环单选a16. #include void main( ) char ch25=6937,8254,*p2; int i,j,s=0; for(i=0;i2;i+) pi=chi; for(i=0;i0;j+=2) s=10*s+pij-0; printf(%dn,s);69825638256385693825单选c二、多选题17. t为int类

26、型,进入下面的循环之前,t的值为0 while(t=1) 则以下叙述中正确的是( )循环控制表达式的值为0循环控制表达式的值为1循环控制表达式合法以上说法都不对多选b, c18. #includevoid main()int x=3,y;do y=x-; if(!y) printf(#);contine; printf(#); while(1=x=2);将输出#将输出#*是死循环控制表达式合法多选A, D19. 设有以下程序段 int x=0,s=0;while(!x!=0) s+=+x;printf(%d,s);运行程序段后输出0 运行程序段后输出1程序段中的控制表达式是合法的程序段执行无限

27、次多选b, c20. 下面程序段描述正确的是x=3;do y=x-; if(!y)printf(*);continue; printf(#); while(1=x=2);将输出#将输出#*是死循环控制表达式合法多选c, d21. 下面有关for循环的正确描述是:for循环只能用于循环次数已经确立的情况for循环先执行循环体语句后判断表达式在for循环中能用break语句跳出循环体for循环的循环体语句中可以包含多条语句,但必须用花括号括起来多选c, d22. 有以下程序段 int k=0; while(k=1)k+; 下面描述正确的是死循环没有语法错,能执行一次也不执行执行1次多选a, b23

28、. 有以下程序段:( )int k=0;while(k=1) k+;死循环 没有语法错,能执行一次也执行执行1次多选a, b三、判断题24. break是结束本次循环,而continue是结束所有的循环对错判断b25. 若执行下面的程序是从键盘上输入5,则输出是 :m isnt prime void main() long m; printf(please input a number:n); scanf(%ld,&m); double sqrtm=sqrt(m); for(int i=2;i=sqrtm;i+) if(m%i=0) break; if(sqrtmi) printf(m is

29、prime.n); else printf(m is not prime.n);对错判断b26. 以下程序的输出结果是6 main() int s,i; for(s=0,i=1;i2); printf(%dn,j); 对错判断a29. 在C语言中,for循环的表达式一是必须要的对错判断b第七章 数 组一、单选题1. 若有定义:int aa8;。则以下表达式中不能代表数组元aa1的地址的是( ) &aa0+1 &aa1 &aa0+ aa+1 单选d2. 若有定义和语句: char s10;s=abcd;printf(%sn,s); 则结果是(以下u代表空格) 输出abcd 输出a输出abcduu

30、uuu编译不通过单选d3. 下列描述中不正确的是( ) 字符型数组中可以存放字符串 可以对字符型数组进行整体输入、输出 可以对整型数组进行整体输入、输出 不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值单选c4. 下述对C语言字符数组的描术中错误的是( ) 字符数组可以存放字符串 字符数组中的字符串可以整体输入、输出 可以在赋值语句通过赋值运算符“”对字符数组整体赋值 不可以用关系运算符对字符数组中的字符串进行比较单选c5. 以下程序的输出的结果是( ) main( ) char cf35=AAAA,BBB,CC; printf(%sn,cf1); AAAA BBB BBBCC C

31、C单选b6. 以下程序的输出结果是 #include #include main( ) char str12=s,t,r,i,n,g; printf(%dn,strlen(str); 671112单选a7. 合法的数组定义是 int a =string; int a5=0,1,2,3,4,5; char s=string; char a =0,1,2,3,4,5;单选d8. 执行下面程序: main( ) int i,j=3,a=1,2,3,4,5,6,7,8,9,0; for(i=0;i10;i+)ai=9-i; printf(%d,%d,a4,a5); 则输出的结果是( ) 4,5 3,4

32、 6,5 5,4单选d9. 有定义语句:int b;char c10; ,则正确的输入语句是scanf(%d%s,&b,&c);scanf(%d%s,&b,c);scanf(%d%s,b,c);scanf(%d%s,b,&c);单选b10. 下述对C语言字符数组的描术中错误的是 字符数组可以存放字符串 字符数组中的字符串可以整体输入、输出 可以在赋值语句中通过赋值运算符=对字符数组整体赋值 不可以用关系运算符对字符数组中的字符串进行比较单选c11. 以下程序段的输出结果是( ) char s =141141abct; printf(%dn,strlen(s);9121314单选a二、多选题12

33、. 对于一个数组它有什么特性( )简单性 内存的连续集合性元素的同类型多选b, c, d13. 若想通过以下输入语句使a中存放字符串1234,b中存放字符5,则输入数据的形式正确的是( )char a10,b;scanf(a=%s b=c%c.a.&b);a=1234 b=5a=1234b=5a=1234,b=5a=1234 .b=5多选a, b14. 下面程序段的运行结果是 char c =tv0willn;printf(%d,strlen(c);1439字符串中没有非法字符,输出值确定多选b, d15. 下面描述正确的是两个字符串所包含的字符个数相同时,才能比较字符串字符个数多的字符串比字

34、符个数少的字符串大字符串Stop 与stop不相等字符串that小于字符串the多选c, d16. 以下数组定义正确的是( )int a 3=0int b2 =1,2,3,4,5,6int c105=1,2,3int d23=1,2,3,4多选a, c, d17. 以下选项能正确赋值的是( )char a6=a,b,c,d,e;char b6=”a0”;char c10=”abcde”;char d6;d=”abcdef”;多选a, b, c三、判断题18. 对于二维数组a23,则a1表示是第二行的首地址对错判断a19. 下列程序段的输出结果是hello main( ) char b =Hel

35、lo,you; b5=0; printf(%s n, b ); 对错判断a20. 下列程序执行后输出的结果是 8 5 int d=1; fun (int q) int d=5; d +=q+; printf(%d,d); main( ) int a=3; fun(a);d+=a+; printf(%dn,d); 对错判断b21. 阅读下列程序: void main( ) int n3,i,j,k;for(i=0;i3;i+) ni=0; k=2; for(i=0;ik;i+) for(j=0;jk;j+) nj=ni+1; printf(%dn,n1);上述程序运行后输出结果是 3对错判断a2

36、2. 在定义数组变量时,可以不指定数组的长度对错判断b第八章 函 数一、单选题1. 以下程序的输出结果是( ) int main( ) int a=20,b; while(b=a+3) a-=6; if(a%2=0)a-=2; else if(a0)fun(k-1); printf(%d,k); 54321 01234512345543210单选b3. 以下函数调用语句中含有实参个数是 func(exp1,exp2),(exp3,exp4,exp5); 1245单选b4. 在c语言中,函数的隐含存储类别是( ) auto static extern 无存储类别单选c5. 在C语言中,形参的缺省存储类型是( ) auto register static extern单选a6. 执行下面的程序 main() static char a410=1234,abcd,xyz,ijkm; int i=3; char (*

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!