c语言试题库及答案
一、单项选择题(每题2分,共10题)
1.以下关于C语言源文件的后缀,正确的是()
A..exeB..cC..objD..dll
2.C语言中,用于输出数据的函数是()
A.scanfB.printfC.getcharD.putchar
3.以下定义变量正确的是()
A.int1a;B.floatmy-num;C.charc1;D.double@2;
4.表达式5%3的值是()
A.0B.1C.2D.3
5.若有定义:inta=10,b=20;执行语句a=a+b;b=a-b;a=a-b;后,a和b的值分别为()
A.10,20B.20,10C.30,20D.30,10
6.以下循环体执行的次数是()
```c
for(inti=0;i5;i++){
printf(%d,i);
}
```
A.4次B.5次C.6次D.0次
7.以下不能作为C语言标识符的是()
A._abcB.abc_123C.123abcD.abc
8.若有定义:charch=A;则printf(%d,ch);的输出结果是()
A.AB.65C.97D.错误信息
9.以下函数声明正确的是()
A.intfunc(inta,intb);B.intfunc(a,b);C.func(inta,intb);D.intfunc(inta;intb);
10.以下运算符优先级最高的是()
A.+B.C.==D.()
答案:1.B2.B3.C4.C5.B6.B7.C8.B9.A10.D
二、多项选择题(每题2分,共10题)
1.以下属于C语言数据类型的有()
A.整型B.浮点型C.字符型D.数组
2.以下哪些函数可以用于输入数据()
A.scanfB.getsC.getcharD.putchar
3.以下关于if语句的正确描述有()
A.可以没有else部分
B.if后面的表达式必须用括号括起来
C.可以嵌套使用
D.只能判断一个条件
4.以下哪些是合法的常量()
A.123B.3.14fC.aD.abc
5.以下关于数组的说法正确的有()
A.数组元素类型必须相同
B.数组下标从0开始
C.可以通过下标访问数组元素
D.数组大小可以动态改变
6.以下哪些关键字用于循环结构()
A.forB.whileC.do-whileD.switch
7.以下函数中,用于字符串操作的有()
A.strlenB.strcpyC.strcmpD.pow
8.以下关于指针的说法正确的有()
A.指针变量可以存储地址
B.可以通过指针访问变量的值
C.指针类型必须和它所指向的变量类型一致
D.指针变量的值不能改变
9.以下哪些是C语言中的预处理指令()
A.includeB.defineC.ifD.else
10.以下关于结构体的说法正确的有()
A.结构体可以包含不同类型的成员
B.可以定义结构体数组
C.结构体成员可以通过结构体变量名访问
D.结构体不能嵌套定义
答案:1.ABCD2.ABC3.ABC4.ABCD5.ABC6.ABC7.ABC8.ABC9.ABCD10.ABC
三、判断题(每题2分,共10题)
1.C语言程序中,main函数是程序的入口。()
2.变量在使用前必须先定义。()
3.表达式3/2的值是1.5。()
4.字符型变量只能存储一个字符。()
5.while循环和do-while循环的执行过程完全一样。()
6.数组名代表数组的首地址。()
7.函数可以没有返回值。()
8.指针变量的值可以为NULL。()
9.预处理指令是在编译阶段执行的。()
10.结构体变量之间可以直接进行赋值操作。()
答案:1.√2.√3.×4.√5.×6.√7.√