c语言程序设计考试题库及答案.doc
c语言程序设计考试题库及答案
单项选择题(每题2分,共10题)
1.C语言程序的基本单位是()
A.函数B.过程C.子程序D.标识符
答案:A
2.以下哪个是合法的标识符()
A.1aB.aC._abcD.int
答案:C
3.若有定义:inta=5;则表达式a++的值是()
A.5B.6C.4D.7
答案:A
4.以下循环体的执行次数是()
```c
for(inti=0;i10;i+=11)
printf(%d,i);
```
A.0B.1C.10D.无限次
答案:A
5.若有定义:inta[3][4];则对数组元素的正确引用是()
A.a[2][4]B.a[1,3]C.a[0][0]D.a(1)(2)
答案:C
6.以下不能正确进行字符串赋值操作的是()
A.chars[10]=abcdef;
B.chars[10];s=abcdef;
C.chars=abcdef;
D.chars[10];strcpy(s,abcdef);
答案:B
7.函数调用时,以下说法正确的是()
A.实参和形参各占独立的存储单元
B.实参和形参共用存储单元
C.可以由用户指定实参和形参是否共用存储单元
D.以上都不对
答案:A
8.若有定义:intp,a=10;以下语句正确的是()
A.p=a;B.p=a;C.p=a;D.p=a;
答案:B
9.以下关于结构体的说法错误的是()
A.结构体是一种用户自定义的数据类型
B.结构体成员可以是不同的数据类型
C.结构体变量在内存中占用连续的存储单元
D.结构体不能嵌套定义
答案:D
10.要打开一个已存在的非空文件“file.txt”用于修改,正确的打开方式是()
A.rB.wC.r+D.w+
答案:C
多项选择题(每题2分,共10题)
1.以下属于C语言数据类型的有()
A.intB.floatC.doubleD.char
答案:ABCD
2.以下运算符中,优先级高于乘法运算符的有()
A.+B.-C.%D.++
答案:CD
3.以下关于if语句的正确描述有()
A.if语句可以单独使用,也可以和else搭配使用
B.if语句中条件表达式可以是任何表达式
C.多个if语句可以嵌套使用
D.if语句的条件表达式只能是关系表达式或逻辑表达式
答案:ABC
4.以下哪些是合法的数组定义()
A.inta[5];
B.floatb[3]={1.0,2.0,3.0};
C.charc[]=abc;
D.intd[][3]={1,2,3,4,5,6};
答案:ABCD
5.以下关于字符串处理函数,正确的有()
A.strlen用于计算字符串长度
B.strcpy用于复制字符串
C.strcmp用于比较字符串
D.strcat用于连接字符串
答案:ABCD
6.函数的参数传递方式有()
A.值传递B.地址传递C.引用传递D.名传递
答案:AB
7.以下关于指针的说法正确的有()
A.指针变量可以存储地址值
B.指针可以进行算术运算
C.可以通过指针访问数组元素
D.空指针不指向任何内存单元
答案:ABCD
8.以下属于结构体定义关键字的有()
A.structB.unionC.typedefD.enum
答案:A
9.以下关于文件操作函数,正确的有()
A.fopen用于打开文件
B.fclose用于关闭文件
C.fread用于从文件中读取数据
D.fwrite用于向文件中写入数据
答案:ABCD
10.以下哪些是C语言的预处理指令()
A.includeB.defineC.ifD.else
答案:ABCD
判断题(每题2分,共10题)
1.C语言中,变量必须先定义后使用。()
答案:对
2.字符型数据在内存中占1个字节。()
答案:对
3.表达式5/2的结果是2.5。()
答案:错
4.while循环的循环体至少会执行一次。()
答案:错
5.数组名代表数组的首地址。()
答案:对
6.函数定义可以嵌套,但函数调用不能嵌套。()
答案:错