2018年河北科技师范院数学与信息科技院341农业知识综合三[专硕]之C程序设计考研强化五套模拟题
● 摘要
一、选择题
1. 以下选项中,当x 为大于1的奇数时,值为0的表达式是( )。
【答案】D
【解析】x 为大于1的奇数,
2. 有如下程序:
程序运行后的输出结果是( )。
A.56,57,
B.57,58,
C.57,57,
D.55,57,
【答案】C
【解析】convert ( )函数定义了一个形参:指针变量*data。函数体中将指针变量*data对应地址的值进行加1处理,再返回加1前data 的值。main ( )函数中,定义了变量data 并赋初值56,调用covert ( )函数,改变变量data 的值,此时data=57; 程序执行data=convert(&data),函数convert ( )返回的是执行前data 的值,所以data=57。C 项正确。
3. 有如下程序:
第 2 页,共 87 页 的值为1,^为假。
程序运行后的输出结果是( )。
A.min=l, max=9
B.min=0, max=9
C.min=l, max=4
D.min=0, max=4
【答案】B
【解析】在对数组进行初始化时,如果在说明数组时给出了长度,但没有给所有的元素赋予初始值,而只依次给前面的几个数组元素赋予初值,那么c 语言将自动对余下的元素赋初值0,
则
程序的执行过程为:调用函数将数组array 首地
址传人函数,定义结构体变量res ,并为其成员赋值。for 循环查找数组array 数组的最小值0,将其赋值给res 的成员first , 查找数组最大值9, 赋值给res 的成员second 。最后返回结构体变量res ,
则输出故
B 选项正确。
4. 以下叙述中正确的是( )。
A. 在C 语言中,预处理命令行都以“#”开头
B. 预处理命令行必须位于C 源程序的起始位置
C.#include
第 3 页,共 87 页
D.C 语言的预处理不能实现宏定义和条件编译的功能
【答案】A
【解析】编译预处理”就是在C 编译程序对C 源程序进行编译前,由编译预处理程序对这些编译预处理命令行进行处理的过程。A 项正确,在C 语言中,凡是以“#”号开头的行,都称为“编译预处理”命令行。B 项错误,预处理命令行可以出现在程序的任何一行的开始部位,其作
C 项错误,#inClUde
D 项错误,预处理可以实现宏定义、条件编译和文件包含。
5. 若有定义:
则正确的switch 语句是( )。
【答案】D
【解析】D 项正确,标号可以是整型表达式。A 项错误,case 是关键字,与其后面的常量表达式合称case 语句标号。常量表达式的类型必须与swicth 后圆括号中的表达式类型相同,各case 语句标号的值应该互不相同。c 是变量,不能作为表达式放在case 后面;B 项错误,switch 后面不应该有分号;C 项错误,switch 参数值类型必须是这几种类型之一:
6. 有以下程序:
程序运行时键盘输入9〈回车>,则输出的结果是( )。
A.10
B.11
C.9
D.8
第 4 页,共 87 页
相关内容
相关标签