c语言等级考试题及答案.doc
c语言等级考试题及答案
单项选择题(每题2分,共10题)
1.C语言程序的基本单位是()
A.函数B.语句C.程序块D.标识符
答案:A
2.以下哪个是合法的标识符()
A.123abcB._abcC.intD.ab
答案:B
3.若有定义`inta=5;`,则`a++`的值是()
A.5B.6C.4D.7
答案:A
4.以下哪种循环结构至少会执行一次循环体()
A.forB.whileC.do-whileD.都不是
答案:C
5.若定义`inta[5]={1,2,3,4,5};`,则`a[3]`的值是()
A.3B.4C.5D.2
答案:B
6.函数返回值的类型是由()决定的。
A.return语句中的表达式类型
B.调用该函数的主调函数类型
C.定义函数时所指定的函数类型
D.以上都不对
答案:C
7.以下对指针变量的操作中,不正确的是()
A.intp;p=NULL;
B.inta=10;intp=a;
C.intp;p=10;
D.inta=10;intp;p=a;
答案:C
8.若有定义`struct{inta;charb;}s;`,则`sizeof(s)`的值是()
A.3B.4C.5D.6
答案:C
9.以下关于文件操作的函数中,用于打开文件的是()
A.fcloseB.freadC.fopenD.fwrite
答案:C
10.下面哪个关键字用于跳出当前循环()
A.continueB.breakC.gotoD.return
答案:B
多项选择题(每题2分,共10题)
1.以下属于C语言数据类型的有()
A.intB.floatC.doubleD.char
答案:ABCD
2.以下运算符中,优先级高于加法运算符`+`的有()
A.``B.`/`C.`%`D.``
答案:ABC
3.以下关于数组的描述正确的有()
A.数组名是一个指针常量
B.数组必须先定义后使用
C.数组元素可以是不同类型的数据
D.可以对数组整体进行赋值操作
答案:AB
4.以下哪些函数属于标准输入输出函数()
A.printfB.scanfC.getcharD.putchar
答案:ABCD
5.以下关于函数的说法正确的有()
A.函数可以嵌套定义
B.函数可以嵌套调用
C.函数可以有返回值,也可以没有
D.函数定义时形参可以不写类型
答案:BC
6.以下关于指针的说法正确的有()
A.指针变量存储的是内存地址
B.可以对指针进行算术运算
C.可以用`==`比较两个指针是否指向同一内存地址
D.空指针不指向任何有效内存地址
答案:ABCD
7.以下属于结构体成员访问方式的有()
A.结构体变量.成员名
B.结构体指针-成员名
C.(结构体指针).成员名
D.结构体名.成员名
答案:ABC
8.以下关于文件操作的说法正确的有()
A.打开文件时需要指定文件名和打开方式
B.对文件进行读写操作后必须关闭文件
C.可以从文件中读取数据并存储到变量中
D.可以将变量中的数据写入文件
答案:ABCD
9.以下哪些是C语言的预处理指令()
A.`include`B.`define`C.`if`D.`else`
答案:ABCD
10.以下关于循环结构的说法正确的有()
A.for循环适用于已知循环次数的情况
B.while循环先判断条件再执行循环体
C.do-while循环先执行循环体再判断条件
D.三种循环可以相互嵌套
答案:ABCD
判断题(每题2分,共10题)
1.C语言区分大小写。()
答案:对
2.定义变量时可以不初始化。()
答案:对
3.`a+=1;`和`a=a+1;`的作用相同。()
答案:对
4.数组的下标可以从1开始。()
答案:错
5.函数中没有return语句也能正常返回。()
答案:对
6.指针变量可以和整数进行加法运算。()
答案:对
7.结构体变量可以作为函数参数传递。()
答案:对
8.对文件进行写操作时,若文件不存在会自动创建。()
答案:对
9.`definePI3.1