c语言省二级考试笔试试题及答案.doc
c语言省二级考试笔试试题及答案
一、单项选择题(每题2分,共10题)
1.C语言源程序文件的扩展名是()
A..cB..objC..exeD..h
2.以下合法的标识符是()
A.3aB.abC._abcD.int
3.若有定义:inta=5;则表达式a+=a-=aa的值是()
A.-40B.0C.5D.25
4.以下能正确定义数组并初始化的语句是()
A.inta[5]={0,1,2,3,4,5};
B.inta[]={0,1,2,3,4,5};
C.inta[5]={};
D.inta[5]={0,1,2,3,4};
5.函数调用时,实参向形参传递数据的方式是()
A.地址传递B.值传递C.由用户指定传递方式D.随机传递
6.若有定义:chars[]=abc\0def;则strlen(s)的值是()
A.7B.3C.8D.4
7.以下关于指针的叙述,错误的是()
A.指针变量可以指向结构体变量
B.指针变量可以指向数组元素
C.指针变量可以指向函数
D.指针变量不可以指向自身
8.以下关于文件操作的叙述,正确的是()
A.fopen函数用于打开文件,若打开失败返回0
B.fclose函数用于关闭文件,若关闭失败返回EOF
C.fread函数只能读取文本文件
D.fwrite函数只能写入二进制文件
9.若有定义:inta[3][4];则对数组元素的正确引用是()
A.a[2][4]B.a[3][0]C.a[0][0]D.a[0,0]
10.以下运算符中,优先级最高的是()
A.B.+C.==D.!=
二、多项选择题(每题2分,共10题)
1.以下属于C语言数据类型的有()
A.整型B.实型C.字符型D.结构体
2.以下关于变量存储类别的说法,正确的有()
A.auto变量存储在动态存储区
B.static变量存储在静态存储区
C.register变量存储在寄存器中
D.extern变量用于声明外部变量
3.以下关于数组的说法,正确的有()
A.数组元素可以是不同类型的数据
B.数组名代表数组的首地址
C.可以对数组进行整体赋值
D.数组的下标从0开始
4.以下关于函数的说法,正确的有()
A.函数可以没有参数
B.函数可以没有返回值
C.函数可以嵌套定义
D.函数可以递归调用
5.以下关于指针的说法,正确的有()
A.指针变量可以进行算术运算
B.指针变量可以进行关系运算
C.可以用一个指针变量指向另一个指针变量
D.可以用数组名给指针变量赋值
6.以下关于结构体的说法,正确的有()
A.结构体是一种构造数据类型
B.结构体变量可以作为函数参数
C.可以对结构体变量进行整体赋值
D.结构体成员可以是不同类型的数据
7.以下关于文件操作的说法,正确的有()
A.fgetc函数用于从文件中读取一个字符
B.fputc函数用于向文件中写入一个字符
C.fscanf函数用于从文件中按格式读取数据
D.fprintf函数用于向文件中按格式写入数据
8.以下关于预处理命令的说法,正确的有()
A.include用于包含头文件
B.define用于定义宏
C.预处理命令在编译之前处理
D.预处理命令可以出现在程序的任何位置
9.以下关于运算符的说法,正确的有()
A.sizeof是一个运算符
B.逗号运算符的优先级最低
C.自增、自减运算符只能用于变量
D.赋值运算符是右结合性
10.以下关于循环结构的说法,正确的有()
A.while循环先判断条件,后执行循环体
B.do-while循环先执行循环体,后判断条件
C.for循环可以省略初始化、条件判断和增量表达式
D.可以用break语句跳出循环
三、判断题(每题2分,共10题)
1.C语言中,注释部分不会影响程序的运行结果。()
2.变量必须先定义后使用。()
3.数组名和指针变量是完全相同的概念。()
4.函数的形参在函数定义时分配内存空间。()
5.结构体变量之间可以直接进行比较。()
6.文件操作结束后,必须调用fclose函数关闭文件。()
7.预处