试卷总分:100 得分:100
一、单选题 (共 25 道试题,共 100 分)
1.下列语句描述错误的是()。
A.for----循环
B.while----循环
C.if-----判断
D.switch----循环
2.设有说明:char a; int b; float c; 则表达式a+b-c值的数据类型为( * )。
A.char
B.int
C.float
D.double
3.关于字符数组说法错误的是()。
A.不能存放数
B.c只能用于存放字符’
C.就是字符串
D.和其他数组操作一样
4.已知int x=23;则printf(x++*1/3)的输出结果是( )。
A.8
B.7.66
C.7.33
D.7
5.设 int x=1, y=1; 表达式(!x||y--)的值是( )。
A.0
B.1
C.2
D.-1
6.下列说法正确的是()。
A.scanf用于输出
B.printf用于输入
C.gets用于输入一个字符串
D.gets用于输出一个字符串
7.以下程序执行后sum的值是( )。 main( * ) { int i , sum; for(i=1;i<6;i++) sum+=i; printf(“%dn”,sum); }
A.15
B.14
C.不确定
D.0
8.在32位的系统中,double数据类型的存储空间长度是( * )字节。
A.2
B.4
C.8
D.16
9.以下程序段的输出结果是( )。 int a=1234; printf(“%2dn”, a);
A.12
B.34
C.1234
D.提示出错,无结果
10.下列程序不需要循环控制的是()。
A.打印1-9
B.求10!
C.累加1-10
D.求方程的根
11.下面关于数组说法正确的是()。
A.可以存不同类型的值
B.不可以为空
C.长度可动态改变
D.可以存相同类型的元素
12.printf语句的作用是()。
A.写入文件
B.读入数据
C.记录数据
D.黑屏终端打印信息
13.C语言中while和do-while循环的主要区别是( * )。
A.do-while循环体至少无条件执行一次
B.while的循环控制条件比do-while的循环控制条件严格
C.do-while允许从外部转到循环体内
D.do-while的循环体不能是复合语句
14.动态存储区不存放什么数据()。
A.形式参数
B.自动变量
C.返回地址
D.字符串常量
15.在一个C程序中( )
A.main函数必须出现在所有函数之前
B.main函数必须出现在所有函数之后
C.main函数可以出现在任何位置
D.main函数必须在固定位置
16.当把以下四个表达式用做if语句的控制表达式时,有一个选项与其他三个选项含义不同,这个选项是( )。
A.k%2
B.k%2= =1
C.(k%2)!=0
D.!k%2= =1
17.下列说法错误的是()。
A.程序中可以没有判断语句
B.程序中可以没有循环语句
C.循环语句是必不可少的
D.continue可以在循环语句中使用
18.下面程序段的运行结果是( * )。 int n=0; while(n++<=2); printf(“%d”,n);
A.2
B.3
C.4
D.有语法错
19.已知for循环语句 for(表达式1;表达式2;表达式3),那么下列说法错误的是()。
A.表达式1可以为空
B.表达式1不可以为空
C.表达式2是循环表达式
D.表达式3为终止条件
20.下面四个选项中,均是合法的用户标识符的选项是( * )
A.A P_0 do
B.float la0 _A
C.b-a goto int
D._123 temp INT
21.strlen函数的作用是()。
A.求字符串长度
B.折半字符串
C.修改字符串
D.复制字符串
22.以定义c为字符型变量,则下列语句中正确的是( )。
A.c=’97’;
B.c=”97”;
C.c=97;
D.c=”a”;
23.以下数据在C语言中不合法的整数是( )。
A.20
B.0x4001
C.08
D.0x12ed
24.若有如下程序段,则循环体语句共执行( * )次。 int k=10; while(k>0) {k--;}
A.10
B.9
C.11
D.0
25.如果要在外部使用某变量,可以使用的关键字为()
A.static
B.const
C.protected
D.extern