第1章 C语言基础 第2章 顺序结构 练习题 学号: 姓名:
float a=38.4,b=6.4,x; x=m/2+n*a/b+1/2; printf(\}
A. 27.000000 B. 27.500000 C. 28.000000 D. 28.500000
57. 以下程序的输出结果为().
main()
{int i=010,j=10;
printf(\}
A. 11,10 B. 9,10 C. 010,9 D. 10,9
58. 执行下列语句后,a和b的值分别为().
int a,b; a=1+'a';
b=2+7%-4-'A'; A. -63,-64 B. 98,-60 C. 1,-60 D. 79,78
59. C语言中要求对变量作强制定义的主要理由是().
A. 便于移植 B. 便于写文件
C. 便于编辑预处理程序的处理 D.
便于确定类型和分配空间
60. 以下程序的输出结果是().
main()
{float x=3.6; int i; i=(int)x;
printf(\}
A. x=3.600000,i=4 B. x=3,i=3
C. x=3.600000,i=3 D. x=3 i=3.600000
61. 下列标识符中,不合法的C语言用户自定义标识符
是().
A. printf
B. enum C. _ D. sin
62. 以下字符中不是转义字符的是().
A. '\\t' B. '\\b' C. '\\c' D.
'\\\\'
63. 下列程序段的输出结果为().
float k=0.8567;
printf(\ A. 0085.6%% B. 0085.7% C. 0085.6% D. .857
64. 下列程序段的输出结果为().
float x=213.82631; printf(\ A. 213.82 B. 213.83 C. 213 D. 3.8
65. C语言的注释定界符是().
A. { } B. [ ] C. \\* *\\ D.
/* */
66. double x;scanf(\不可以赋值给x变量的
常量是().
A. 123 B. 100000 C. 'A' D.
\
67. 下列程序段的输出结果为().
int x=3,y=2;
printf(\ A. 1 B. 7 C. 3 D. 5
68. 执行以下程序段后,输出结果和a的值是().
int a=10;
printf(\ A. 10 和 10
5
第1章 C语言基础 第2章 顺序结构 练习题 学号: 姓名:
B. 10 和 11 C. 11 和 10 D. 11 和 11
69. 一个算法应该具有\确定性\等5个特性,下面对另
外4个特性的描述中错误的是().
A. 有零个或多个输入 B. 有零个或多个输出 C. 有穷性 D.
可行性
70. 以下叙述中正确的是().
A. C语言的源程序不必通过编译就可以直接运
行
B. C语言中的每条可执行语句最终都将被转换
成二进制的机器指令
C. C源程序经编译形成的二进制代码可以直接
运行
D. C语言中的函数不可以单独进行编译
71. 在C语言中,char型数据在内存中的存储形式是().
A. 补码 B. 反码 C. 原码 D.
ASCII码
72. 设变量a是整型,f是实型,i是双精度型,则表达式
10+'a'+i*f值的数据类型为().
A. int B. float C. double D.
不确定
73. 若有定义:int a=7;float x=2.5,y=4.7;则表达式
x+a%3*(int)(x+y)%2/4的值是().
A. 2.500000 B. 2.750000 C. 3.500000 D.
0.000000
74. 设有说明:char w;int x;float y;double z;则表达式
w*x+z-y值的数据类型为().
A. float B. char C. int D.
double
75. 语句printf(\的输出结果是 (说
明:'\\b'是退格符)().
A. a\\bre\\'hi\\'y\\\\\\bou B. a\\bre\\'hi\\'y\\bou
C. re'hi'you D. abre'hi'y\\bou
76. 设有 int x=11; 则表达式 (x++ * 1/3) 的值是().
A. 3 B. 4 C. 11 D.
12
77. 若以下变量均是整型,且num=sum=7;则计算表达
式sum=num++,sum++,++num后sum的值为().
A. 7 B. 8 C. 9 D.
10
78. 下面四个选项中,均是不合法的用户标识符的选项
是().
A. A P_0 do B. float la0 _A C. b-a goto int D.
_123 temp int
79. 假设所有变量均为整型,则表达式
(a=2,b=5,b++,a+b)的值是().
A. 7 B. 8 C. 6 D. 2
80. 若有说明语句:char c='\\72';则变量c().
A. 包含1个字符 B. 包含2个字符 C. 包含3个字符
D. 说明不合法,c的值不确定 81. 在C语言中,要求运算数必须是整型的运算符是().A. / B. ++ C. != D. % 82. 下面不正确的字符串常量是().
A. 'abc' B. \C. \D.
\ \
83. 已定义ch为字符型变量,以下赋值语句中错误的
是().
A. ch='\\'; B. ch=62+3;
6
第1章 C语言基础 第2章 顺序结构 练习题 学号: 姓名:
C. ch=NULL; D. ch='\\xaa';
84. 若a为int类型,且其值为3,则执行完表达式
a+=a-=a*a后,a的值是().
A. -3 B. 9 C. -12 D. 6 85. 下列选项中,合法的C语言关键字是().
A. VAR B. cher C. integer D. default 86. 设有说明语句:char a='\\72';则变量a().
A. 包含1个字符 B. 包含2个字符 C. 包含3个字符 D. 说明不合法 87. 以下选项中,与k=n++完全等价的表达式是().
A. k=n,n=n+1 B. n=n+1,k=n C. k=++n D.
k+=n+1
88. printf函数中用到格式符%5s,其中数字5表示输出
的字符串占用5列,如果字符串长度大于5,则输出按方式().
A. 从左起输出该字符串,右补空格 B. 按原字符长从左向右全部输出 C. 右对齐输出该字串,左补空格 D. 输出错误信息
89. 系统的标准输入文件是指().
A. 键盘 B. 显示器 C. 软盘 D.
硬盘
90. C语言并不是非常严格的算法语言,在以下关于C
语言的不严格的叙述中,错误的是().
A. 同一个运算符号在不同的场合可以有不同的
含义
B. 有些不同类型的变量可以在一个表达式中运
算
C. 在赋值表达式中等号(=)左边的变量和右边的
值可以是不同类型
D. 任何不同数据类型都不可以通用
91. 以下选项中属于C语言的数据类型是()
A. 复数型 B. 双精度型 C. 逻辑型 D. 集合型 92. 下列常数中不能作为C语言的常量的是()
A. 0xA6 B. .004 C. 0683 D. 300000 93. 在C语言中,数字031是一个()
A. 十六进制数 B. 八进制数 C. 十进制数 D. 非法数 94. 下列可以正确表示字符型常量的是()
A. '\\t' B. \C. \D.
185'
95. 已知int a;float f;
正确的语句是()
A. (int f)%a B. int(f)%a C. (int)f%a D. int(f%a) 96. 以下合法的C语言赋值语句是()
A. a=b=58 B. --i;
C. a=58,b=58 D.
k=a+b
97. C语言中的标识符只能由字母、数字和下划线3
种字符组成,且第一个字符().
A. 必须为字母或下划线 B. 必须为下划线 C. 必须为字母
D.
可以字母、数字和下划线中的任一种字符.
98. 若变量已经正确定义,现要将a 和b中的数据进行
交换,下面不正确的是()
A. a=a+b,b=a-b,a=a-b; B. t=a,a=b,b=t; C. t=b;b=a;a=t; D.
a=t;t=b;b=a;
7
第1章 C语言基础 第2章 顺序结构 练习题 学号: 姓名:
/////填空:////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 1. 一个C程序由若干个函数组成,其中必须有且只能有一个【1】函数。 2. C程序中的函数一般由两部分组成,它们是【1】和【2】。 3. C函数的函数体是以【1】开始,以【2】结束。 4. C程序从【1】函数开始执行,在【2】函数中结束。 5. C语言中的关键字必须是【1】字母。 6. C语言标识符的定义规则中,必须以字母或【1】
作为第一个字符。
7. C语言中,一个源程序的主函数名必须为【1】。 8. 执行下列语句后,z 的值是【1】。int x=4,y=25,z=5;
z=y/x*z; 9. 已知 i=5,写出语句 a=i++; 执行后整型变量a的值是【1】。 10. 设 x 的值为15,n 的值为2,则表达式 x%=(n+3) 运算后 x 的值是【1】。 11. 已知 i=5;写出语句 a=--i; 执行后整型变量 a 的值是【1】。 12. 已知 i=5.6;写出语句 a=(int)i; 执行后变量 i 的值是【1】。 13. 已知 i=5,写出语句 i*=i+1; 执行后整型变量 i 的值是【1】。 14. 已知 i=5,写出语句 i-=0x12; 执行后整型变量 i 的值是【1】。
15. 已知 i=5,写出语句 a=(a=i+1,a+2,a+3); 执行后整型变量 a 的值是【1】。
16. 写出语句 b=(a=6,a*3); 执行后整型变量b的值是
【1】。
17. 输入整型变量a的值。
int a; scanf(\【1】);
18. 表达式 a+=b 相当于表达式【1】。
19. 表达式 i++ 相当于表达式【1】。
20. C语言中的字符变量用保留字【1】来说明。 21. 已知a=13,b=6, a/b的十进制数值为【1】。 22. 已知a=13,b=6, a%b的十进制数值为【1】。 23. int a=1,b=2,c=3; 执行语句a=b=c;后a的值是【1】。 24. int a=1,b=2,c=3; 执行语句a += b *= c;后a的值
是【1】。
25. 设x和y均为int型变量,且x=1,y=2,则表达式
1.0+x/y的值为【1】。
26. 语句:x++; ++x; x=x+1; x=l+x; 执行后都使变量x
中的值增1,请写出一条同一功能的赋值语句【1】。
27. 若 char w,int x,float y,double z;则表达式w*x+z-y
的结果为【1】类型。 28. 若int x=6;则x+=x-=x*x表达式最后x的值是【1】。
29. 设c语言中,int类型数据占2个字节,则long类型数据占【1】个字节,short类型数据占【2】个字节。
30. 执行下面两个语句,输出的结果是【1】。(注:字母a和b的ASCII码值分别是97和98)
char c1=97,c2=98; printf(\ 31. 执行下列语句的结果是【1】,
a=3;printf(\ 32. 已知x=3,y=2,则表达式x*=y+8的值为【1】。 33. 设x=2.5,a=7,y=4.7,算术表达式
x+a%3*(int)(x+y)%2/4的值为【1】。 34. 设x的值为15,n的值为2,则表达式x%=(n+=3)
运算后x的值是【1】。 35. 若x和n均是int型变量,且x和n的初值均为5,
则计算表达式 x+=n++ 后x的值为【1】,n的值为【2】。
36. 在C语言中的实型变量分为两种类型,它们是float型和【1】型。
37. 若有以下定义,则计算表达式y+=y-=m*=y后的y值是【1】。
int m=5,y=2; 38. 以下程序的输出结果是【1】。
main() { int a=0; a+=(a=8); printf(\} 39. 若s是int型变量,且s=6,则下面表达式的值是【1】。
s%2+(s+1)%2
40. 若有定义:char c='\\010'; 则变量C中包含的字符个
数为【1】。
41. 执行下列语句后,z 的值是【1】。
int x=4,y=25,z=5; z=y/x*z;
42. 已知 i=5,写出语句 a=i++; 执行后整型变量a的
值是【1】。
43. 设 x 的值为15,n 的值为2,则表达式 x%=(n+3)
运算后 x 的值是【1】。
44. 已知 i=5;写出语句 a=--i; 执行后整型变量 a 的
值是【1】。
8