当前位置:问答库>考研试题

2018年湖南农业大学食品科学技术院341农业知识综合三[专硕]之C程序设计考研强化五套模拟题

  摘要

一、单项选择题

1. 以下关于编译预处理的叙述中错误的是( )。

A. 预处理命令行必须位于源程序的开始

B. 源程序中凡是以#开始的控制行都是预处理命令行

C. 一行上只能有一条有效的预处理命令

D. 预处理命令是在程序正式编译之前被处理的

【答案】A

【解析】通常,预处理命令位于源文件的开头,也可以写在函数与函数之间。

2. 有以下程序段:

当执行上述程序段,并从键盘输入:name=Lilinum=1001<回车>后,name 的值为( )。

A.Lili

B.name=Lili

C.Lilinum=

D.name=Lilinum=1001

【答案】A

【解析】在C 语言中输入多个字符串时,系统会把空格字符作为输入的字符串之间的分隔符。本题中,由于输入两个变量,所以中间应该以回车键为间隔,当从键盘输入name=Lilinum=1001只是输入第一个变量,并且只将Lili 赋值给了name 。

3. 设有以下程序段:inty :

y=rand( )%30+1;

则变量y 的取值范围是( )。

A.0≤y ≤30

B.0

C.l

D.l

【答案】B

【解析】本题考点为“%”求余符号。rand ( )产生随机整数,任何整数对30求余得到的整数范围为0〜29,则y 的取值范围为 或者说故B 选项正确。

4. 有以下定义:

则以下选项中正确的表达式是( )。

【答案】C

【解析】C 项正确,是把得到的浮点数强制转换成整型。A 项错误,

运算符;D 项错误,结果是浮点数,不能参与模运算;B 项错误,C 语言中没有

其赋值。

5. 以下选项中,合法的是( )。 A.

B.

C.

D.

【答案】A

【解析】A 中是在赋初值时直接赋字符串常量。B 项错误,str4是字符变量不能赋值为字符串常量;CD 两项错误,字符串常量给出的是地址值,而数组名name 是一个地址常量,不能被重新赋值。

6. 要求定义一个具有6个元素的int 型一维数组,以下选项中错误的是( )。 A. B. C.

D.

【答案】A

【解析】数组名后面括号内,必须是整型常量,不可以是变量,A 项定义错误。

7. 关于C 语言中数的表示,以下叙述中正确的是( )。

A. 只有整型数在允许范围内能精确无误地表示,实型数会有误差

B. 只要在允许范围内整型和实型都能精确表示

C. 只有实型数在允许范围内能精确无误地表示,整型数会有误差

D. 只有八进制表示的数才不会有误差

【答案】A

【解析】实型数据在内存中存储的二进制位数是有限的,而一个十进制实数转化为二进制实

是右值,不能给

数时,其有效数字位数有可能会超过尾数的存储长度,从而导致有效数字丢失而产生误差。在整形数允许范围之内,二进制可以表示任意一个整数。

8. 有以下程序:

程序运行后的输出结果是( )。

A.3,5

B.7,7

C.5,7

D.3,7

【答案】D

【解析】函数f ( )的功能是定义一个整型的指针变量s ,指向全局变量k ,然后修改S 指向地址中的值为7,因此f ( )函数只是修改全局变量k 的值为7,与main ( )函数中临时变量m 无关,因此最后输出为3,7。

9. 以下选项中不能用作C 程序合法常量的是( )。

A.1,

234

C.123

【答案】A

A 项错误。BD 两项为字符常量;C 项为数值常量。 【解析】常量分为数值常量和字符串常量,

10.以下函数findmax 拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能。