学生c语言考试题及答案
单项选择题(每题2分,共10题)
1.C语言源文件的后缀名是()
A..cppB..cC..javaD..txt
2.以下哪个是合法的变量名()
A.123abcB._abcC.intD.ab
3.执行语句`inta=5;a+=3;`后,a的值是()
A.5B.3C.8D.2
4.以下哪种循环结构至少会执行一次循环体()
A.forB.whileC.do-whileD.都不是
5.若有`inta[5]={1,2,3};`,则a[3]的值为()
A.0B.3C.4D.不确定
6.函数返回值的类型由()决定。
A.return语句中表达式类型B.调用函数的主调函数类型
C.定义函数时指定的函数类型D.形参类型
7.若`charch=A;`,则`ch+1`的值是()
A.AB.BC.65D.66
8.以下哪个运算符优先级最高()
A.+B.C.=D.
9.若`intp,a=10;p=a;`,则`p`的值是()
A.10B.aC.p的地址D.不确定
10.以下哪种数据类型占用字节数最少()
A.intB.floatC.charD.double
答案:1.B2.B3.C4.C5.A6.C7.B8.B9.A10.C
多项选择题(每题2分,共10题)
1.以下属于C语言基本数据类型的有()
A.intB.floatC.structD.char
2.以下能正确定义数组的有()
A.inta[5];B.inta[]={1,2,3};
C.inta[5]={1,2,3};D.inta[5]={0};
3.以下哪些是C语言的关键字()
A.ifB.whileC.printfD.return
4.关于函数,下列说法正确的是()
A.函数可以没有参数
B.函数可以没有返回值
C.函数可以嵌套定义
D.函数可以嵌套调用
5.以下能实现输入一个整数的语句有()
A.scanf(%d,a);B.printf(%d,a);
C.getchar();D.getint(a);(假设存在getint函数)
6.以下关系表达式中,结果为真的有()
A.53B.0==0C.5=5D.32
7.以下哪些是循环控制语句()
A.forB.whileC.switchD.do-while
8.关于指针,下列说法正确的是()
A.指针变量存储的是地址
B.指针可以进行算术运算
C.空指针是指向地址为0的指针
D.可以通过指针访问数组元素
9.以下能实现输出字符串的函数有()
A.printfB.putsC.getcharD.scanf
10.以下哪些可以作为C语言的常量()
A.123B.aC.abcD.3.14
答案:1.ABD2.ABCD3.ABD4.ABD5.AD6.ABC7.ABD8.ABD9.AB10.ABCD
判断题(每题2分,共10题)
1.C语言中,变量必须先定义后使用。()
2.数组名代表数组的首地址。()
3.所有的if语句都可以用switch语句替代。()
4.在C语言中,0表示假,非0表示真。()
5.函数的形参在函数调用时才分配内存。()
6.指针变量只能存储地址,不能存储其他数据。()
7.字符串结束标志是\0。()
8.for循环中,循环变量必须从0开始。()
9.结构体变量不能整体赋值。()
10.预处理命令都是以开头。()
答案:1.√2.√3.×4.√5.√6.√7.√8.×9.×10.√
简答题(每题5分,共4题)
1.简述C语言中变量的作用域。
答案:变量作用域指变量的有效范围。局部变量在定义它的函