一、选择题
1. 设有定义:
A. B. C.
正确的输入数据
D. 答:A
【解析】A 项中
是起作用的,程序从键盘正确的读入前两个数据并且保存在指定的地址,
读入第三个数据后,将其放入缓冲区,然后寻找应该存放的地址,因为没有找到,程序会发生错误而中断,注释错误。B 项由于scanf 只接收两个数据,所以变量x 得不到赋值,注释正确。C 项scanf 会按照float 类型读取输入的第二个数据并且保存为int 类型,由于两种类型的存储形式与所占内存单元均不同,b 得不到正确的赋值,注释正确。D 项在使用scanf 函数时,如果除了格式说明字符和附加格式字符外,还有其他字符,则在输入数据时要求按一一对应的位置原样输入这些字符,注释正确。
2. 以下选项中叙述正确的是( )。
A. 复杂任务可以分解成简单子任务
B.C 语言程序中的所有函数必须保存在同一个源文件中 C. 全部三种基本结构都包含的才是结构化程序 D.C 语言程序可以定义多个不同内容的main 函数 答:A
【解析】结构化程序设计把一个复杂的问题的求解过程分成阶段进行,即复杂任务可以分解成简单的任务,A 项正确。C 语言程序中的函数不一定要保存在同一个源文件中,外部函数可以 B 项错误。被同程序中其他源文件中调用,结构化程序主要由3种基本控制结构组成,循环结构、选择结构、顺序结构,它们组成的算法结构可 以解决任何复杂的问题。算法不一定要包含所有三种基本结构,也可以只包含一种或两种,C 项错误。C 程序由 一个或若干个函数构成,程序中有且只能有一个主函数,即main 函数,D 项错误。
3. 以下关于宏的叙述错误的是( )。
A. 宏替换不具有计算功能 B. 宏是一种预处理指令
第 2 页,共 34 页
则以下选项中对语句所作的注释叙述错误的是( )。
多余的格式符完全不起作用
多佘的输入项不能获得输入数据
; 格式串中允许加入格式符以外的字符串
输入项与格式符类型不匹配,变量b 和x 得不到
C. 宏名必须用大写字母构成 D. 宏替换不占用运行时间 答:C
【解析】宏名习惯采用大写字母,以便与一般变量区别,但是并没有规定一定要用大写字母,因此,答案为C 选项。
4. 以下表达式的值与X 无关、其值恒为真的是( )。
A. B. C. D. 答:A
【解析】逻辑与只有在
符号两边操作均为真时,逻辑表达式为真;逻辑或当且只当
符号两边操作至少有一个为真时,逻辑表达式为真。项B 、C 、D 中,使得表达式恒为真,都跟x 的取值有关,B 、C 、D 项错误;A 项,根据优先级,为0或1,均小于5, 故恒真。
5. 结构化程序由顺序、选择、循环三种基本结构组成,以下相关叙述错误的是( )。
A. 三种基本结构不可以嵌套使用
B. 顺序结构是按语句在程序中的先后顺序逐条执行,没有分支,没有转移 C. 选择结构是根据不同的条件执行不同分支中的语句
D. 循环结构是根据条件决定是否重复、重复执行多少次循环体语句 答:A
【解析】结构化程序主要由3种基本控制结构组成,顺序结构是最基本的算法结构,当执行由这些语句构成的程序时,将按这些语句在程序中的先后顺序逐条执行,没有分支,没有转移,没有步骤之间的相互约束,没有 对某一步骤的多次使用,完全按照步骤的原有次序依次执行,B 选项叙述正确。选择结构根据不同的条件去执行 不同分支中的语句,C 选项叙述正确。循环结构就是根据各自的条件,使同一组语句重复执行多次,D 选项叙述正确。三种结构可以嵌套使用,A 选项叙述错误,选择A 选项。
6. 有如下程序:
第 3 页,共 34 页
程序运行后的输出结果是( )。 A.FDBXX B.FFFXX C.FDBBB D.ABCDE 答:A
【解析】对数组进行初始化时,如果在说明数组时给出了长度,但没有给所有的元素赋予初始值,而只依次给前面的几个数组元素赋予初值,那么C 语言将自动对余下的元素赋初值,
即
程序执行过程为:执行for 循环,将数组首地址赋给指针prr ,依次遍历每
一个元素,如果数组元素为0则输出‘X ’,如果不为0则按照字母表输出字符‘A ’后第个字符。程序运行后的输出结果为:FDBXX ,故A 项正确。
7. 有以下程序:
程序运行后的输出结果是( )。 A.2, 4, 8, B.3, 6, 9, C.3, 5, 7, D.1, 3, 5, 答:B
【解析】函数实现的功能是将数组a 中每一行的最大值放于数组b 中
,
第一行最大值为3,第二行最大值为6,第二行最大值为9。
8. 以下语句中存在语法错误的是( )。
A. B.
第 4 页,共 34 页