- 0
- 0
- 约6.79千字
- 约 13页
- 2026-01-31 发布于山东
- 举报
C语言题库
第一部分单选题(50题)
1、若floatf=5.9;强制转换为整型的表达式是?()
A.int(f)
B.(int)f
C.intf
D.(float)f
【答案】:答案解析:强制类型转换格式为(目标类型)变量,(int)f结果为5(取整数部分),故选B。
2、以下函数参数传递方式中,能修改实参值的是?()
A.值传递
B.地址传递
C.都能
D.都不能
【答案】:答案解析:值传递修改的是形参(副本),不影响实参;地址传递通过指针修改实参值,故选B。
3、若intx=0;执行if(x)printf(A);elseprintf(B);输出结果是?()
A.A
B.B
C.AB
D.无输出
【答案】:答案解析:x=0为假,执行else分支,输出B,故选B。
4、以下循环中,循环次数为3次的是?()
A.for(i=1;i=3;i++)
B.while(i=3)
C.do{i++;}while(i3);
D.for(i=5;i0;i--)
【答案】:答案解析:A执行3次(1-3),B是无限循环,C(i初始0)执行3次,D执行5次,题目问“3次”,A明确正确,故选A。
5、定义单精度浮点型变量y并赋值2.718的语句是?()
A.doubley=2.718;
B.floaty=2.718f;
C.floaty=2.718;
D.inty=2.718;
【答案】:答案解析:float是单精度,需加f后缀(否则默认double),double是双精度,故选B。
6、break语句在循环中的作用是?()
A.跳过本次循环,继续下一次
B.终止整个循环
C.终止当前语句
D.无作用
【答案】:答案解析:break在循环中用于终止整个循环(跳出循环体),continue是跳过本次循环,故选B。
7、以下函数无返回值的是?()
A.intfun(){return0;}
B.voidfun(){printf(hello);}
C.floatfun(){return3.14;}
D.charfun(){returnb;}
【答案】:答案解析:void类型函数无返回值,A、C、D均有返回值,故选B。
8、以下哪个是C语言的循环语句?()
A.if
B.for
C.else
D.switch
【答案】:答案解析:C语言循环语句包括for、while、do-while,if/else是选择语句,switch是多分支选择语句,故选B。
9、函数返回值通过______语句返回?()
A.printf
B.scanf
C.return
D.break
【答案】:答案解析:return语句用于函数返回值,printf输出,scanf输入,break跳出循环/switch,故选C。
10、以下循环中,用于计算1到10的乘积的是?()
A.s=0;for(i=1;i=10;i++)s+=i;
B.s=1;for(i=1;i=10;i++)s*=i;
C.s=0;while(i=10){s*=i;i++;}
D.s=1;do{s+=i;i++;}while(i=10);
【答案】:答案解析:乘积初始值为1,累加初始值为0,B的逻辑是12...*10,正确,故选B。
11、以下关于数组的说法正确的是?()
A.数组长度可动态修改
B.数组元素可不同类型
C.数组在内存中连续存储
D.数组名可作为左值赋值
【答案】:答案解析:A数组长度定义后固定,B元素必须同类型,D数组名是常量(不可赋值),C正确,故选C。
12、若inti=0;执行do{printf(%d,i);i++;}while(i0);输出结果是?()
A.0
B.无输出
C.无限循环
D.01
【答案】:答案解析:do-while先执行一次(输出0,i=1),判断i0为假,循环结束,故选A。
13、以下字符串数组定义正确的是?()
A.charstr[5][10]={hello,world};
B.charstr[5][]={hello,world};
C.charstr[][10]={hello,world,!};
D.charstr[5][10]={hello,world,!};
【答案】:答案解析:B第二维不能省略,A、C、D均正确?D最完整(5行10列,初始化3个字符串),故选D。
14、函数调用时,实参和形参的个数必须?()
A.相等
B.实参多于形参
C.形参多于实参
D.无要求
【答案】:答案解析:函数调用时实参和形参个数、类型需匹配,否则编译错误,故选A。
15、预处理命令#definePI3.14159的作用是?()
A.定义变量
B.定义常量
C.函数声明
原创力文档

文档评论(0)