C语言计算机二级考试题目及答案.doc
C语言计算机二级考试题目及答案
一、单项选择题(每题2分,共10题)
1.C语言源程序文件的后缀是()
A..exeB..cC..objD..h
2.以下选项中合法的标识符是()
A.1aB.sizeofC._123D.a+b
3.若有定义:inta=5;则表达式a++的值是()
A.5B.6C.7D.4
4.以下关于数组的说法正确的是()
A.数组大小在定义后可以改变
B.数组元素类型可以不同
C.数组下标从0开始
D.不能对数组整体赋值
5.函数调用时,实参和形参之间的数据传递是()
A.地址传递B.值传递
C.既可以地址传递也可以值传递D.由用户指定传递方式
6.若有定义:charstr[]=abc;则数组str的长度是()
A.3B.4C.5D.6
7.以下运算符中,优先级最高的是()
A.+B.==C.D.()
8.以下关于指针的说法错误的是()
A.指针变量存储的是内存地址
B.指针可以进行算术运算
C.指针不能指向数组
D.空指针值为NULL
9.若有定义:inta[3][4];则a[1][2]表示的是()
A.第1行第2列元素
B.第2行第3列元素
C.第2行第2列元素
D.第1行第3列元素
10.以下哪个语句可以实现循环结构()
A.ifB.switchC.forD.return
二、多项选择题(每题2分,共10题)
1.以下属于C语言数据类型的有()
A.intB.floatC.doubleD.char
2.以下哪些是合法的C语言常量()
A.123B.3.14C.abcD.a
3.以下关于函数的说法正确的有()
A.函数可以嵌套定义
B.函数可以有返回值
C.函数可以没有参数
D.函数名不能与变量名相同
4.以下哪些语句可以用于流程控制()
A.if-elseB.whileC.do-whileD.for
5.关于数组的初始化,正确的有()
A.inta[5]={1,2,3,4,5};
B.intb[]={1,2,3};
C.charc[3]={a,b,c};
D.floatd[2]={1.0,2.0};
6.以下关于指针的操作正确的有()
A.intp;p=a;(假设a已定义)
B.inta=10;intp=a;
C.intp;p=NULL;
D.inta[5];intp=a;
7.以下哪些是C语言的预处理命令()
A.includeB.defineC.ifD.else
8.以下关于结构体的说法正确的有()
A.结构体是一种自定义数据类型
B.结构体成员可以是不同数据类型
C.结构体变量可以整体赋值
D.可以定义结构体数组
9.以下关于文件操作的函数有()
A.fopenB.fcloseC.freadD.fwrite
10.以下哪些表达式的值为真(假设变量均已正确定义和赋值)()
A.53B.0!=0C.11D.1||0
三、判断题(每题2分,共10题)
1.C语言中变量必须先定义后使用。()
2.表达式3/2的结果是1.5。()
3.函数内部定义的变量是全局变量。()
4.数组名代表数组的首地址。()
5.指针变量可以指向任何类型的变量。()
6.if语句中条件表达式的值只能是0或1。()
7.可以对字符数组整体输入输出。()
8.宏定义在编译时进行替换。()
9.结构体变量所占内存大小是其成员所占内存大小之和。()
10.文件操作结束后不需要关闭文件。()
四、简答题(每题5分,共4题)
1.简述C语言中变量的存储类别。
答案:C语言变量存储类别有auto(自动变量,默认类别,函数内定义的局部变量)、register(寄存器变量,建议存于寄存器以提高访问速度)、static(静态变量,局部静态变量生存期长,全局静态变量有文件作用域)、extern(外部变量,用于声明其他文件中定义的全局变量)。
2.简述数组和指针的关系。
答案:数组名本质是指