第一范文网 - 专业文章范例文档资料分享平台

c语言复习题C语言答案

来源:用户分享 时间:2025/11/13 22:03:18 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

???

语言程序设计?

??

?

复?习?题?

选择题 ................................ 3

知识点1:C程序的基本结构和算法基本概念 ................................................................................................. 3 知识点2:数据和表达式计算 .................................................................................................................................. 3 知识点3:输入输出 ..................................................................................................................................................... 1 知识点4:逻辑量和逻辑表达式 ............................................................................................................................. 1 知识点5:位运算 .......................................................................................................................................................... 1 知识点6:选择结构和if、switch 语句 .............................................................................................................. 1 知识点7:循环结构 while 、do~while和for语句 ..................................................................................... 1 知识点8:数组的基本概念和引用 ........................................................................................................................ 2 知识点9:变量的作用域和生存期 ........................................................................................................................ 2 知识点10:函数 ............................................................................................................................................................ 2 知识点11:指针及其应用 ......................................................................................................................................... 3 知识点12:结构体和共用体 .................................................................................................................................... 4 知识点13:用typedef声明数据类型 ................................................................................................................... 4 知识点14:文件 ............................................................................................................................................................ 4 知识点15:编译预处理 ................................................................................................................................................. 4

选择题答案: ........................ 5 程序填空题 .............................. 6

知识点1:顺序,选择结构 ....................................................................................................................................... 6 知识点2:循环结构 ..................................................................................................................................................... 6 知识点3:函数 ............................................................................................................................................................... 7 知识点4:数组 ............................................................................................................................................................... 8 知识点5:指针 ............................................................................................................................................................... 9

程序填空答案: ...................... 9 写出程序运行的结果 ......................... 11

知识点1:选择结构 .................................................................................................................................................. 11 知识点2:循环结构 .................................................................................................................................................. 11 知识点3: 数组.......................................................................................................................................................... 12 知识点4:函数 ............................................................................................................................................................ 13 知识点5:指针 ............................................................................................................................................................ 14

程序运行答案: ..................... 15 编程题 ............................... 17

?

?

选择题

知识点1:C程序的基本结构和算法基本概念 1. C语言程序的基本单位为_______。

A) 程序行 B) 语句 C) 函数 D) 字符 2. 用C语言编写的代码程序______。

A) 可立即执行 B) 是一个源程序

C) 经过编译即可执行 D) 经过解释就能执行 3. 以下叙述中正确的是______。

A) 用C程序实现的算法必须要有输入和输出操作 B) 用C程序实现的算法可以没有输出但必须要输入 C) 用C程序实现的算法可以没有输入但必须要有输出 D) 用C程序实现的算法可以既没有输入也没有输出

4. 结构化程序由三种基本结构组成,三种基本结构组成的算法____。

A) 可以完成任何复杂的任务 B) 只能完成部分复杂的任务 C) 只能完成符合结构化的任务 D) 只能完成一些简单的任务 5. 在一个C程序中______。

A) main函数必须出现在所有函数之前 B) main函数可以在任何地方出现

C) main函数必须出现在所有函数之后 D) main函数必须出现在固定位置

6. 下列关于C语言的叙述错误的是______。

A) 大写字母和小写字母的意义相同

B) 不同类型的变量可以出现在同一个表达式中

C) 在赋值表达式中赋值号(=)左边的变量和右边的值可以是不同类型 D) 某些运算符号在不同的场合可以有不同的含义 7. 以下叙述中错误的是_______。

A) C程序中的#include和#define行均不是C语句 B) 除逗号运算符外,赋值运算符的优先级最低 C) C程序中,j++;是赋值语句

D) C程序中,+,-,*,/,%号是算术运算符,可用于整型和实型数的运算 8. 以下程序的功能是给r输入数据后计算半径为r的圆面积s。程序在编译

时出错,出错的原因是________。 main()

/* Beginning */ { int r; float s; scanf(\

s=p*r*r; printf(\}

A) 注释语句书写位置错误

B) 存放圆半径的变量r不应该定义为整型 C) 输出语句中格式描述符非法

D) 计算圆面积的赋值语句中使用了非法变量 知识点2:数据和表达式计算

9. 以下标识符中,不能作为合法的C语言用户定义标识符的是_____。

A) a3 B) if C) _123 D) IF 10. 以下数据中,不正确的数值或字符常量是_____。

A) 011 B) 3.987E-2 C) 018 D) 0xabcd 11. 若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是______。

A) ++x,y=x-- B) x+1=y C) x=x+10=x+y D) double(x)/10 12. 以下不正确的C语言用户自定义的标识符是____。

A) int B) a_1_2 C) ab1exe D) _x 13. 以下是正确的C语言标识符是____。

A) #define B) _123 C) %d D) \\n 14. 正确的自定义标识符是_______。

A) if B) iF C) a*b D) 8bq 15. 正确的自定义标识符是________。

A) a=2 B) a+b C) name D) default

16. 以下合法的C语言的关键字是________。

A) NULL B) file C) include D) typedef 17. 在C语言中,错误的常量是______。

A) 1E+0.0 B) 5 C) 0xaf D) 0L

18. 在C语言中,错误的int类型的常数是____ 。

A) 32768 B) 0 C) 037 D) 0XAF 19. C语言中最简单的数据类型包括_______。

A) 整型、实型、逻辑型 B) 整型、实型、字符型 C) 整型、字符型、逻辑型 D) 整型,实型,逻辑型,字符型 20. 下列变量定义中合法的是_______。

A) short_a=1.1e-1; B) double b=1+5e2.5; C) long do=0xfdaL; D) float 2_and=1.e-3; 21. 在C语言中,整数-8在内存中的存储形式是________ 。

A) 1111 1111 1111 1000 B) 1000 0000 0000 1000 C) 0000 0000 0000 1000 D) 1111 1111 1111 0111 22. C语言中字符型(char)数据在内存中的存储形式是____。

A) 原码 B) 补码 C) 反码 D) ASCII码

23. 将字符'g'(AscII码值(八进制)为147)赋给字符变量c,正确的表达式是__。A) c=\\147 B) c=\ C) c=' \\147' D) c='0147'

24. 将空格字符(AscII码值为32)赋给字符变量c,正确的赋值语句是____。

A) c='\\0' B) c=NULL C) c=0 D) c=32 25. 字符串\的长度是____。

A) 8 B) 9 C) 14 D) 非法字符串 26. 字符串\的长度是____。

A) 0 B) 1 C) 2 D) 非法字符串 27. 错误的转义字符是____。

A) '\\091' B) '\\\\' C) '\\0' D) '\\'' 28. 以下字符中,不正确的C语言转义字符是_____。

A) '\\\\' B) '071' C) '\\b' D) '\\xaa' 29. 执行以下程序段后,c3变量的值是_____。

int c1=1,c2=2,c3; c3=c1/c2;

A) 0 B) 1/2 C) 0.5 D) 1 30. 设有 int x=11; 则表达式 (x++ * 1/3) 的值是_____。

A) 3 B) 4 C) 11 D) 0 31. 以下选项中,值为1的表达式______。

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

32. 设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数

点后两位(四舍五入)是_____ 。

A) x=x*100+0.5/100.0 B) x=(x*100+0.5)/100.0 C) x=(int)(x*100+0.5)/100.0 D) x=(x/100+0.5)*100.0 33. 表达式3.6-5/2+1.2+5%2的值是______。

A) 4.3 B) 4.8 C) 3.3 D) 3.8

34. 已知int a[3][2]={3,2,1};则表达式\的值是___。

A) 0.166667 B) 1 C) 0 D) 错误的表达式 35. 逗号表达式\的值是____。

A) 15 B) 60 C) 30 D) 不确定 36. 已知int x; x=(1,2,3,4);变量x的值是____。

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

37. 如果int a=1,b=2,c=3,d=4;则条件表达式\的值是____。

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

38. 与条件表达式\中的表达式(n)等价的表达式是____。

A) (n==0) B) (n==1) C) (n!=0) D) (n!=1)

39. 已知 int x=1,y=1,z=1;表达式\的值是____。

A) 3 B) 4 C) 5 D) 表达式错误

40. 已知大写字母A的ASCII码是65,小写字母a的ASCII码是97。以下

不能将变量c中的大写字母转换为对应小写字母的语句是_____。 A) c=(c-'A')&+'a' B) c=c+32 C) c=c-'A'+'a' D) c=('A'+C)&-'a' 41. sizeof(double)是 _____。

A) 函数调用 B) double型表达式 C) int型表达式 D) 非法表达式

知识点3:输入输出

42. 下列程序的输出结果是_____。

void main()

{ double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf(\ }

A) 3 B) 3.2 C) 0 D) 3.07

43. 下列程序执行后的输出结果是(小数点后只写一位)_____。

void main()

{ double d; float f; long l; int i; i=f=l=d=20/3;

printf(\ }

A) 6 6 6.0 6.0 B) 6 6 6.7 6.7 C) 6 6 6.0 6.7 D) 6 6 6.7 6.0 44. 执行语句 printf(\;屏幕显示____。

A) -1 B) 1 C) -ffff D) ffff 45. 若a为int型变量,则以下语句______。

a=-2L;

printf(\,A);

A) 赋值不合法 B) 输出值为-2 C) 输出为不确定值 D) 输出值为2 46. 若变量都已正确定义,则程序段______。

a=3;b=4;

a>b?printf(\=%d\=%d\,b++); A) 输出为:*** a=4 B) 输出为:*** a=3 C) 输出为:### b=4 D) 输出为:### b=5

47. 使用语句scanf(\输入变量x、y的值(□代表空格),

正确的输入是____。

A) 1.25,2.4 B) 1.25□2.4 C) x=1.25,y=2.4 D) x=1.25□y=2.4

48. 设有输入语句scanf(\如果运行程序,该如何输入

数据______。

A) a=6,b=7 B) 6 7 C) a=6 b=7 D) 6,7

49. 设int a=3,b=4;执行printf(\后的输出结果是_____

A) 3,4 B) 4,3 C) 4,4 D) 3,3 50. 有以下程序,以下叙述中正确的是_____。

main()

{ char a1='M', a2='m'; printf(\

A) 程序输出大写字母M B) 程序输出小写字母m C) 格式说明符不足,编译出错 D) 程序运行时产生出错信息 51. 有以下程序

main()

{ int m=12,n=34;

printf(\printf(\}

程序运行后的输出结果是______。

A) 12353514 B) 12353513 C) 12343514 D) 12343513 知识点4:逻辑量和逻辑表达式

52. 在C语言中,能代表逻辑值“真”的是______。

A) true B) 大于0的数 C) 非0整数 D) 非0的数 53. 设int x=0,y=1;则表达式(x&&--y)运算完毕后,y的值是_____。

A) 0 B) 1 C) 2 D) –1 54. 设int x=1,y=1;表达式(!x||y--)的值是_____。

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

55. 设int x=1,y=1;则表达式(x||--y)运算完毕后,y的值是_____。

A) 0 B) 1 C) 2 D) –1

56. 已知:char a;int b;float c;double d;执行语句\;\后,

变量c的数据类型是____ 。

A) int B) char C) float D) double

57. 设int a=0,b=5; 执行表达式++a||++b,a+b后,变量a,b和表达式的值分

别是_____。

A) 0,0,0 B) 0,5,5 C) 1,5,6 D) 1,6,7 58. 已知int x=1,y;执行下述语句后变量x的值是____。

y=++x>5&&++x<10;

A) 1 B) 2 C) 3 D) 4 59. 数学式子a≤x<b的正确的C语言表达式是____。

A) a<=x=a&&x=a||x=B) 60. 设有int i, j, k; 则表达式i=1,j=2,k=3, i&&j&k 的值为

A) 0 B) 1 C) 2 D) 3

61. 为判断字符变量c的值不是数字也不是字母时,应采用下述表达式____。

A) c<=48||c>=57&&c<=65&&c>=122

B) !(c<=48||c>=57&&c<=65||c>=90&&c<=97||c>=122)

C) c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122 D) !(c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122)

知识点5:位运算

62. 在位运算中,操作数每右移一位,其结果相当于____。

A) 操作数乘以2 B) 操作数除以2 C) 操作数除以16 D) 操作数乘以16

63. 已知二进制数a是00101101,如果想通过整型变量b与a做异或运算,

使变量a的高4位取反,低4位不变,则二进制数b的值应是____。 A) 11110000 B) 00001111 C) 11111111 D) 00000000 64. 已知 int a=15,执行语句a=a<<2以后,变量a的值是____。

A) 20 B) 40 C) 60 D) 80 知识点6:选择结构和if、switch 语句

65. 把以下四个表达式用作if语句的控制表达式时,选项_______与其它三个选

项含义不同。

A) k%2 B) k%2==1 C) (k%2)!=0 D) !k%2==1 66. 在嵌套使用if语句时,C语言规定else总是________。

A) 和它前面与其具有相同缩进位置的if配对 B) 和它前面与其最近的if配对

C) 和它前面与其最近的且不带else的if配对 D) 和它前面的第一个if配对 67. 下列叙述中正确的是________。

A) break语句只能用于switch语句 B) 在switch语句中必须使用default

C) break语句必须与switch语句中的case配对使用 D) 在switch语句中,不一定使用break语句

68. 下列条件语句中,功能与其他语句不同的是______。

A) if(A) printf(\B) if(a==0) printf(\C) if (a!=0) printf(\D) if(a==0) printf(\

69. 以下程序段中与语句k=a>b?(b>c?1:0):0;功能等价的是________。

A) if((a>B)&&(b>C)) k=1;else k=0; B) if((a>B)||(b>C)) k=1; else k=0; C) if(a<=B) k=0;else if(b<=C) k=1;

D) if(a>B) k=1;else if(b>C) k=1;else k=0;

70. 已知int i=1,j=0;执行下面语句后j的值是____。

while(i) switch(i)

{ case 1:i+=1;j++;break; case 2:i+=2;j++;break; case 3:i+=3;j++;break; default:i--;j++;break; }

A) 1 B) 2 C) 3 D) 死循环 知识点7:循环结构 while 、do~while和for语句 71. 下面的for语句______ 。

for(x=0,y=10;(y>0)&&(x<4);x++,y--);

A) 是无限循环 B) 循环次数不定 C) 循环执行4次 D) 循环执行3次 72. 在以下给出的表达式中,与while(E)中的(E)不等价的表达式是______。

A) (!E==0) B) (E>0‖E<0) C) (E==0) D) (E!=0) 73. 有以下程序段,则while循环执行的次数为_______。

int k=0;while(k=1) k++;

while循环执行的次数为_______。

A) 无限次 B) 有语法错,不能执行 C) 一次也不执行 D) 执行1次 74. 要求通过while循环不断读入字符,当读入字符′N′时结束循环。若变量

已正确定义,以下正确的程序段是________。 A) while((ch=getchar())!=′N′) printf(\B) while(ch=getchar()!=′N′) printf(\C) while(ch=getchar()==′N′) printf(\D) while((ch=getchar())==′N′) printf(\

75. 已知int i=1; 执行语句while (i++<4); 后,变量i的值为____。

A) 3 B) 4 C) 5 D) 6 76. 以下程序执行后的输出结果是______。

main() {int y=10;

while(y--);printf(\,y); }

A) y=0 B) y=-1 C) y=1 D) while构成无限循环

77. 若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程1

搜索更多关于: c语言复习题C语言答案 的文档
c语言复习题C语言答案.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c29jzy52h6902ra61xnf8_1.html(转载请注明文章来源)
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top