- 0
- 0
- 约6.37千字
- 约 13页
- 2026-01-31 发布于山东
- 举报
2026年c语言设计考试题库
第一部分单选题(50题)
1、若inti=0,s=0;执行do{s+=i;i++;}while(i5);后s的值是?()
A.10
B.15
C.5
D.0
【答案】:答案解析:do-while累加0+1+2+3+4=10,s=10,故选A。
2、以下转义字符表示换行的是?()
A.\t
B.\n
C.\
D.\r
【答案】:答案解析:\t是制表符,\n是换行符,\是反斜杠,\r是回车符,故选B。
3、以下函数调用错误的是?()
A.fun();
B.fun(5);
C.fun(3,4);
D.无错误(需看函数定义)
【答案】:答案解析:调用需匹配函数定义,A对应无参函数,B对应单参函数,C对应双参函数,均可能正确,故选D。
4、以下关于空指针的定义正确的是?()
A.#defineNULL0
B.#defineNULL(void*)0
C.int*p=NULL;
D.以上都正确
【答案】:答案解析:A、B是NULL的常见定义,C是定义空指针,均正确,故选D。
5、转义字符\的作用是?()
A.表示反斜杠
B.表示换行
C.表示空格
D.表示制表符
【答案】:答案解析:\用于表示字符反斜杠(\),避免与转义字符冲突,故选A。
6、若inta=5,b=3;执行if(ab){a--;b++;}后a和b的值分别是?()
A.4,4
B.5,3
C.4,3
D.5,4
【答案】:答案解析:ab为真,执行代码块,a=5-1=4,b=3+1=4,故选A。
7、以下哪个是C语言中的赋值运算符?()
A.==
B.=
C.+=
D.!=
【答案】:答案解析:=是赋值运算符,==是等于判断,+=是复合赋值,!=是不等于判断,故选B。
8、若inti;执行for(i=0;i5;i++)printf(%d,i);输出结果是?()
A.01234
B.12345
C.012345
D.无输出
【答案】:答案解析:for循环初始化i=0,条件i5(成立时执行),每次循环后i++,执行5次,输出01234,故选A。
9、函数调用的一般格式是?()
A.函数名(实参列表);
B.函数名实参列表;
C.返回类型函数名(实参列表);
D.函数名=实参列表;
【答案】:答案解析:函数调用格式为“函数名(实参列表);”,实参与形参匹配,故选A。
10、若inta[4]={10,20,30,40};则*(a+2)的值是?()
A.20
B.30
C.40
D.10
【答案】:答案解析:a+2是第三个元素地址,*(a+2)=a[2]=30,故选B。
11、以下关于数组初始化的说法正确的是?()
A.数组必须初始化
B.数组初始化时元素个数不能少于长度
C.数组初始化时可部分赋值
D.数组初始化后不能修改
【答案】:答案解析:数组可部分赋值(未赋值元素默认0),A数组可不用初始化,B可少于长度,D数组元素可修改,故选C。
12、函数返回值通过______语句返回?()
A.printf
B.scanf
C.return
D.break
【答案】:答案解析:return语句用于函数返回值,printf输出,scanf输入,break跳出循环/switch,故选C。
13、以下函数声明错误的是?()
A.voidfun(int);
B.voidfun(inta);
C.voidfun(inta,intb);
D.voidfun(inta;intb);
【答案】:答案解析:函数声明中参数用逗号分隔,不能用分号,D语法错误,故选D。
14、函数调用时,实参的类型必须与形参的类型?()
A.完全一致
B.兼容(可自动转换)
C.无关
D.实参类型大于形参类型
【答案】:答案解析:实参和形参类型可兼容(如int→float),编译器自动转换,不兼容则编译错误,故选B。
15、以下哪个for循环是无限循环?()
A.for(i=0;i5;i++)
B.for(;;)
C.for(i=0;i5;i--);
D.for(i=5;i0;i--)
【答案】:答案解析:for循环三个表达式均省略时,条件恒为真,是无限循环,A执行5次,C、D初始条件不满足(执行0次),故选B。
16、若inti=1;执行while(i=4){printf(%d,i);i+=3;}输出结果是?()
A.14
B.1234
C.1
D.无输出
【答案】:答案解析:i初始1,加3后4,执行2次,输出14,故选A。
17、下列变量定义语法正确的是?()
A.inta=5;
B.inta=b=5;
C.int5a;
D.inta;b;
【答案】:答案解析:
原创力文档

文档评论(0)