C语言二级习题答案
一、C语言概述练习题
1.A 2.D 3.C 4.B
二、数据类型、运算符与表达式
(一)选择题
1.C 2. A 3.B 4. A 5.D 6. D 7. C 8. A 9. C 10. C 12. C
(二)填空题
1. –16 2.-32768~32767 3. 1 4. 26 5.12 6. 4 7.2
8. 10 9.6 10.1 11. 1 12. 102
三、简单的C程序设计
选择题
1.D 2.B,C 3.D 4. scanf(“%c %c %c”,&ch1,&ch2,&ch3)
(二)填空题
i:dec=-4,oct=177774,hex=fffc,unsigned=65532
c:dec=120,oct=170,hex=78,ASCII=x
x=1 y=2 * sum * =3
10 Squared is :10
4. b 5. b 6. b
7.–14
8. 输入项应为地址值 9. 格式符与变量类型不一致
四、逻辑运算与判断选取控制
(一)选择题
1.D 2. C 3. C 4.B 5.B 6.B 7.C 8. 答案全错,正确答案应该是0
(二)编程题
略
五、循环控制
(一)选择题
1.设有程序段
int k=10;
while(k=0)k=k-1;
这下面描述中正确的是_________.
a)while循环执行10次 b)循环是无限循环
c)循环体语句以此也不执行 d)循环体语句执行一次
2.语句while(!E);中的表达式!E等价于________.
a)E==0 b)E!=1 c)E!=0 d)E==1
3.下面程序段的运行结果是__________.
int n=0;
while(n++<=2);printf("%d",n);
a)2 b)3 c)4 d)有语法错
4.下面程序的运行结果是____.
#include
main()
{
int num=0;
while(num<=2)
{
num++;
printf("%d\n",num);
}
}
a)1 b)1 c)1 d)1
2 2 2
3 3
4
5.以下程序段________.
x=-1;
do{
x=x*x;
}
while(!x);
a)是死循环 b)循环执行二次
c)循环执行一次 d)有语法错误
6.若有如下语句
int x=3;
do{printf(""%d\n",x-=2);}while(!(--x));
则上面程序段______.
a)输出的是1 b)输出的是1和-2 c)输出的是3和0 d)是死循环
7.下面程序的运行结果是______.
#include
main()
{int y=10;
do{y--;}while(--y);
printf("%d\n",y--);
}
a)-1 b)1 c)8 d)0
8.若i为整型变量,则以下循环执行次数是_____.
for(i=2;i==0;)printf("%d",i--);
a)无限次 b)0次 c)1次 d)2次
9.执行语句for(i=1;i++<4; );后变量i的值是______.
a)3 b)4 c)5 d)不定
10.以下正确的描述是_______.
a)continue语句的作用是结束整个循环的执行
b)只能在循环体内和switch语句体内使用break语句
c)在循环体内使用break语句或continue语句的作用相同
d)从多层循环嵌套中退出时,只能使用goto语句
(二)、填空题
1.下面程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束
循环。请填空。
int n=0,c;
c=getchar();
while(____)
{
if(_____)n++;
c=getchar();
}
2.下面程序的功能是用