- 2
- 0
- 约6.6千字
- 约 13页
- 2026-01-30 发布于山东
- 举报
c语言期末考试题库
第一部分单选题(50题)
1、continue语句只能用于以下哪种结构?()
A.循环语句
B.switch语句
C.if语句
D.所有结构
【答案】:答案解析:continue仅用于循环语句(for/while/do-while),用于跳过本次循环,故选A。
2、以下for循环中,循环变量更新表达式为“i-=2”的是?()
A.for(i=10;i0;i-=2)
B.for(i=0;i10;i+=2)
C.for(i=10;i0;i--)
D.for(i=0;i10;i=2)
【答案】:答案解析:i-=2等价于i=i-2,A的更新表达式正确,故选A。
3、若inti=0;执行for(i=0;i5;i++){if(i==2)continue;printf(%d,i);}输出结果是?()
A.0134
B.01234
C.01
D.无限循环
【答案】:答案解析:i=2时执行continue,跳过printf,输出0134,故选A。
4、以下数组定义错误的是?()
A.inta[0];
B.inta[5];
C.inta[]={1,2,3};
D.inta[5]={1,2,3};
【答案】:答案解析:数组长度不能为0,编译报错,其余正确,故选A。
5、若inta=3;执行if(++a3)printf(A);elseprintf(B);输出结果是?()
A.A
B.B
C.AB
D.无输出
【答案】:答案解析:++a是前置自增,a变为43,条件为真,输出A,故选A。
6、若inta[5]={10,20,30,40,50};则a[2]的值是?()
A.10
B.20
C.30
D.40
【答案】:答案解析:数组下标从0开始,a[2]是第三个元素30,故选C。
7、以下switch语句中,break语句的作用是?()
A.终止当前case
B.终止switch语句
C.跳过下一个case
D.无作用
【答案】:答案解析:break在switch中用于跳出整个switch语句,避免case穿透,故选B。
8、函数定义的格式是?()
A.返回类型函数名(参数列表){函数体}
B.函数名(返回类型,参数列表){函数体}
C.函数名(参数列表)返回类型{函数体}
D.返回类型函数名{参数列表,函数体}
【答案】:答案解析:函数定义标准格式为“返回类型函数名(参数列表){函数体}”,故选A。
9、若charc=A;执行c=c+32后,c的值是?()
A.a
B.B
C.65
D.97
【答案】:答案解析:大写字母ASCII码比对应小写字母小32,A(65)+32=a(97),故选A。
10、以下循环中,无限循环的是?()
A.for(i=0;i5;i++)
B.while(i=5)
C.do{i++;}while(i5);
D.for(i=5;i0;i--)
【答案】:答案解析:while(i=5)是赋值(i=5,非0,条件恒真),无限循环;A执行5次,C(i初始0)执行5次,D执行5次,故选B。
11、以下switch语句中,case后的常量可以是?()
A.整数
B.字符
C.枚举常量
D.以上都可以
【答案】:答案解析:switch的case后必须是整型常量(整数、字符、枚举常量,字符本质是ASCII码整数),故选D。
12、若inti=0,s=0;执行for(i=0;i4;i++)s+=i;后s的值是?()
A.6
B.10
C.4
D.0
【答案】:答案解析:累加0+1+2+3=6,s=6,故选A。
13、若inti=0,s=0;执行while(i=3){s+=i2;i++;}后s的值是?()
A.12
B.6
C.8
D.10
【答案】:答案解析:累加02+12+22+3*2=0+2+4+6=12,s=12,故选A。
14、若intx=6;执行以下代码后输出结果是?()if(x5){printf(A);}elseif(x8){printf(B);}else{printf(C);}
A.A
B.B
C.C
D.无输出
【答案】:答案解析:x=68,执行第二个分支,输出B,故选B。
15、以下数组定义错误的是?()
A.inta[5];
B.inta[5]={1,2,3,4,5};
C.inta[5]={1,2,3,4,5,6};
D.inta[]={1,2,3,4,5};
【答案】:答案解析:C初始化元素超5个,编译报错,其余正确,故选C。
16、若inta=3,b=5;执行以下代码后输出结果是?()if(ab)printf(A);elseprintf(B);
A.A
B.B
C.AB
D
原创力文档

文档评论(0)