一、选择题
1. 有以下程序:
程序运行后的输出结果是( )。
A.5, 11
B.7, 1
C.7, 11
D.6, 1
【答案】B
【解析】第一' 次循环,a=l,b=b+a=3,a=a+2=3,b=b%10=3;
第二次循环,a=3,b=b+a=6,a=a+2=5,b=b%10=6;
第二次循环,a=5,b=b+a=ll,a=a+2=7,b=b%10=l; 结束循环。
2. 设有以下程序段:
则变量y 的取值范围是( )。
【答案】B
【解析】本题考点为求余符号。rand ( )产生随机整数,任何整数对30求余得到
或者说故B 选项正确。 的整数范围为0〜29, 则y 的取值范围为
3. 有以下程序:
第 2 页,共 42 页
程序运行后的输出结果是( )。
A.0
B.3
C.7
D.8
【答案】B
【解析】C 语言中,字符串没有专门的类型表示,是通过字符数组表示,在字符串末尾用表识字符串结 束。字符串s 的前三个字符满足if 语句,所以当遇到时,for 循环终止,所以最后输出n 值为3。
4. 设a , b ,c 是整型变量且均已赋值,则以下选项中错误的赋值语句是( )。
A.a=(b=3)=1;
B.a=(b=2)+c;
C.a=b=c+10;
D.a=l+(b=c=2):
【答案】A
【解析】赋值运算结合性为由右向左结合,赋值运算符左值为变量,右值为变量或常量,且左右两边数据类型相同才能实现赋值。A 项中,赋值运算(b=3)=1, 左值为表达式,不是变量不能被赋值,A 项错误。B 项运算过程为,先赋值b=2, 再计算b+c,将结果赋给a ,是正确的赋值语句。C 项运算过程为,先计算c+10将结果赋给b , 再将b 赋给a ,是正确的赋值语句。D 项运算过程为,先将2赋给c , 再将c 赋给b , 然后计算1+b, 将结果赋给a , 是正确的赋值语句。
5. 以下叙述中错误的是( )。
A. —个C 程序可以包含多个不同名的函数
B. —个C 程序只能有一个主函数
C.C 程序在书写时,有严格的缩进要求,否则不能编译通过
D.C 程序的主函数必须用main 作为函数名
【答案】C
【解析】一个C 程序有且只有一个主函数main 。一个C 程序可以包含多个不同名字的子函数。C 程序在书写时没有严格的缩进要求。
6. 有以下程序:
第 3 页,共 42 页
程序的运行结果是( )。
A.246
B.135
C.123
D.456
【答案】A
【解析】程序执行过程为:定义二维数组s 与指针数组ps , for循环实现将二维数组每一行的首地址赋值给 对应的指针数组元素,然后输出二维数组每行的第二个元素。程序的运行结果是246。
7. 下列关于C 语言文件的叙述中正确的是( )。
A. 文件由一系列数据依次排列组成,只能构成二进制文件
B. 文件由结构序列组成,可以构成二进制文件或文本文件
C. 文件由数据序列组成,可以构成二进制文件或文本文件
D. 文件由字符序列组成,其类型只能是文本文件
【答案】C
【解析】C 语言将文件看作是一个字符(字节)的序列,即由一个一个字符(字节)数据顺序组成。根据数据的组成形式,可将文件分为两种:①ASCII 文件,又称文本
存储形式原样输出到磁盘上存放。所以C 文 件就是一个字节流或一个二进制流。
8. C 源程序中不能表示的数制是( )。
A. 二进制
B. 八进制
C. 十进制
D. 十六进制
【答案】A
【解析】C 语言中整型常量可以是十进制数、八进制数、十六进制数,虽然运行方式以二进制数运行,但整型常量不包括二进制数。
9. 有以下程序
在VC++6.0平台上编译运行,程序运行后的输出结果是( )。
第 4 页,共 42 页
文件,它的每一个字节可放一个ASCII 码,代表一个字符;②二进制文件,是把内存中的数据按其在内存中的