c语言编程试题及答案.doc
c语言编程试题及答案
单项选择题(每题2分,共10题)
1.C语言程序的基本单位是()
A.函数B.过程C.子程序D.标识符
答案:A
2.以下合法的标识符是()
A.-abcB.intC._123D.1a
答案:C
3.若有定义:inta=5;则表达式a++的值是()
A.5B.6C.4D.7
答案:A
4.以下能正确表示逻辑关系“a≥10或a≤0”的C语言表达式是()
A.a=10ora=0B.a=10|a=0
C.a=10a=0D.a=10||a=0
答案:D
5.若有定义:inta[3][4];则数组a中元素的个数是()
A.3B.4C.7D.12
答案:D
6.若有定义:chars[]=hello;则数组s的长度是()
A.5B.6C.4D.7
答案:B
7.以下对函数的描述中,正确的是()
A.函数中不能再定义函数B.函数必须有返回值
C.函数形参的作用域是整个程序D.函数的定义可以嵌套
答案:A
8.若有定义:intp;则p是()
A.一个整型变量B.一个指向整型变量的指针
C.一个数组D.一个函数
答案:B
9.以下文件打开方式中,以二进制读方式打开文件的是()
A.rB.wC.rbD.wb
答案:C
10.以下不属于C语言关键字的是()
A.ifB.printfC.whileD.int
答案:B
多项选择题(每题2分,共10题)
1.以下属于C语言数据类型的有()
A.整型B.浮点型C.字符型D.结构体
答案:ABCD
2.以下运算符中,属于算术运算符的有()
A.+B.-C.D./
答案:ABCD
3.以下关于if语句的说法正确的有()
A.可以没有else部分B.可以嵌套使用
C.条件表达式可以是任意表达式D.只能处理双分支情况
答案:ABC
4.以下能用于循环控制的语句有()
A.forB.whileC.do-whileD.switch
答案:ABC
5.以下关于数组的说法正确的有()
A.数组元素类型必须相同B.数组下标从0开始
C.数组名代表数组首地址D.可以通过数组名直接访问数组元素
答案:ABC
6.以下关于函数的说法正确的有()
A.函数可以有参数B.函数可以没有返回值
C.函数调用可以作为表达式的一部分D.函数必须在main函数之前定义
答案:ABC
7.以下关于指针的说法正确的有()
A.指针变量可以存储地址B.指针可以进行算术运算
C.可以通过指针访问数组元素D.指针类型必须与所指向变量类型一致
答案:ABCD
8.以下关于结构体的说法正确的有()
A.结构体是一种自定义数据类型B.结构体成员可以是不同类型
C.可以定义结构体数组D.结构体变量不能整体赋值
答案:ABC
9.以下关于文件操作的函数有()
A.fopenB.fcloseC.freadD.fwrite
答案:ABCD
10.以下预处理命令正确的有()
A.includeB.defineC.ifD.else
答案:ABCD
判断题(每题2分,共10题)
1.C语言程序必须有main函数。()
答案:对
2.变量必须先定义后使用。()
答案:对
3.表达式5/2的结果是2.5。()
答案:错
4.while循环的循环体至少会执行一次。()
答案:错
5.数组名作为函数参数时,传递的是数组首地址。()
答案:对
6.函数返回值的类型由return语句中表达式的类型决定。()
答案:错
7.指针变量可以指向任何类型的变量。()
答案:错
8.结构体变量不能作为函数参数。()
答案:错
9.以“w”方式打开文件时,如果文件不存在则创建文件。()
答案:对
10.预处理命令在编译之前执行。()
答案:对
简答题(每题5分,共4题)
1.简述C语言中变量的作用域。
答案:变量作用域指变量的有效范围。局部变量在定义它的函数或复合语句内有效;全局变量作用域从定义处到文件结束,若在其他文件使用需用extern声明。