c语言上机考试题及答案
一、单项选择题(每题2分,共10题)
1.C语言程序的基本单位是()
A.函数B.标识符C.表达式D.语句
2.以下选项中合法的标识符是()
A._123B.123_C.@abcD.int
3.若有定义:inta=5;,则表达式a+=a-=aa的值是()
A.-40B.0C.-24D.-20
4.以下关于C语言中“while和do-while循环”的叙述,正确的是()
A.do-while循环体不能是复合语句
B.do-while的循环体至少被执行一次
C.while循环控制条件为真时结束循环
D.以上说法都不对
5.若有定义:inta[3][4];,则对数组元素的正确引用是()
A.a[2][4]B.a[1,3]C.a[1+1][0]D.a(2)(1)
6.函数调用strcat(strcpy(str1,str2),str3)的功能是()
A.将字符串str1复制到字符串str2中后再连接到字符串str3之后
B.将字符串str2复制到字符串str1中后再将字符串str3连接到str1之后
C.将字符串str3复制到字符串str2中后再连接到字符串str1之后
D.将字符串str2连接到字符串str1之后再将字符串str3复制到str1中
7.以下定义语句中正确的是()
A.chara=Ab=B;B.floata=b=10.0;
C.inta=10,b=a;D.floata,b=a;
8.若有定义:struct{intnum;charname[10];intscore;}s,ps=s;,则以下对结构体变量s中成员num的引用错误的是()
A.s.numB.ps-numC.(ps).numD.ps.num
9.以下关于文件操作的叙述,正确的是()
A.对文件进行读操作时,必须先打开文件
B.用“w”方式打开一个已存在的文件,会保留原文件内容
C.fclose函数用于关闭文件,若成功关闭则返回非零值
D.以上都不对
10.以下程序段的输出结果是()
```c
intx=10;
x=x++;
printf(%d\n,x);
```
A.10B.11C.9D.不确定
二、多项选择题(每题2分,共10题)
1.以下属于C语言数据类型的有()
A.整型B.实型C.字符型D.结构体
2.下列运算符中,优先级高于乘法运算符“”的有()
A.+B.-C.==D.()
3.以下关于if语句的说法,正确的有()
A.if语句可以单独使用,不与else搭配
B.可以有多个elseif分支
C.if语句中条件表达式只能是关系表达式
D.if语句的条件表达式可以是任何表达式
4.以下能正确定义一维数组的有()
A.inta[5];B.intn=5,a[n];
C.inta[]={1,2,3,4,5};D.inta[5]={0};
5.以下关于函数的说法,正确的有()
A.函数可以嵌套定义
B.函数可以嵌套调用
C.函数定义时可以没有参数
D.函数返回值类型可以是void
6.以下关于指针的说法,正确的有()
A.指针变量可以指向数组元素
B.指针变量可以指向函数
C.指针变量可以指向结构体变量
D.指针变量的类型必须与所指向变量的类型一致
7.以下属于结构体成员访问方式的有()
A.结构体变量.成员名B.指针变量-成员名
C.(指针变量).成员名D.结构体变量成员名
8.以下关于文件打开方式的说法,正确的有()
A.“r”方式用于以只读方式打开文本文件
B.“w”方式用于以写方式打开文本文件,若文件存在则覆盖
C.“a”方式用于以追加方式打开文本文件
D.“rb”方式用于以只读方式打开二进制文件
9.以下关于C语言预处理指令的说法,正确的有()
A.预处理指令在编译之前执行
B.include指令用于包含头文件
C.define指令用于定义常量
D.预处理指令都以“”开头
10.以下程序段可能出现编译错误的有()
A.inta;scanf(%d,