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

2016年济南大学网络计算重点实验室C语言程序设计复试笔试最后押题五套卷

  摘要

一、选择题

1. 在C 语言程序中,下列说法中正确的是( )。

A. 函数的定义可以嵌套,但函数的调用不可以嵌套

B. 函数的定义不可以嵌套,但函数的调用可以嵌套

C. 函数的定义和调用均不可以嵌套

D. 函数的定义和调用均可以嵌套

答:B

【解析】C 语言规定,不能在函数的内部定义函数,但函数的调用可以嵌套。

2. 若要实现total=l+2+3+4+5求和,以下程序段错误的是( )。

A.

B.

C.

D.

答:A

【解析】A 项执行过程为:i=l,total=l,判断while 循环条件1<5成立,total=l+l,i=2; 判断循环条件执行函数体,直到i=4, total=l+l+2+3+4, i=5; i=5循环条件不成立,退出循环,A 项不能实现题目要求,错误。B 项执行过程:i=l,total=0,1<=5成立,total=0+l=l,i=2; 直到i=5,total=l+2+3+4+5,i=6; i=6条件不成立,退出循环,程序正确。C 项执行过程:

立,;

直到

第 2 页,共 33 页 成

条件不成立,退出循环,程序正确。D 项执行过程:

i=6; i=6条件不成立,退出循环,程序正确。

3. 以下选项中,合法的数值型常量是( )。

A.3.2

B.'X'

C.099

D.OxEH

答:A 成立,total=0, i=l;

直到

【解析】A 项正确,3.2是合法的实型常量;B 项错误,‘X ’为字符型常量不是数值型常量;C 项错误,以0开头,表示八进制,但八进制的每位小于8; D 项错误,Ox 和H 冲突都是表示十六进制。

4. 以下选项中可用作C 程序合法实数的是( )。

A..leO

B.3.0e0.2

C.E9

D.9.12E

答:A

【解析】浮点型常量分十进制小数形式和指数形式。指数形式要求字母e (或者E )前后必须有数字,且e 后面的指数必须为整数。BCD 三项错误。

5. 关于C 语言的变量名,以下叙述正确的是( )。

A. 变量名不可以与关键字同名

B. 变量名不可以与预定义标识符同名

C. 变量名必须以字母开头

D. 变量名是没有长度限制的

答:A

【解析】合法的标识符由字母(大、小写均可)、数字和下划线组成,并且必须以字母或下划线开头。关键字是指被C 语言保留的,不能用作其他用途的标识符,它们在程序中都代表着固定的含义,用户不可重新定义, A 项正确。预定义标识符是系统已经有过定义的标识符,用户可以

B 项错误。 变量名除了以字母开头以外,重新定义,所以可以作为变量名,还可以以下划线开头,

C 项错误。变量名没有长度限制,但不可超过编译器可以辨识的范围,D 项错误。

6. 以下选项中叙述正确的是( )。

A. 是合法的变量定义语句

B. 数组说明符的一对方括号中只能使用整型常量,而不能使用表达式

C. 数组下标的下限可以是负值

D. 若有数组定义则语句

第 3 页,共 33 页 是合法的

答:A

【解析】A 项正确定义了字符变量cl 、c2, 字符型指针c3, 字符型一维数组,A

项正确。是下标运算符,“下标”可以是任何非负整型数据,取值范围是0〜(数据元素的个数一1)。在引用数组元素时,下标运算符内可以是常量也可以是变量或者表达式,B 项错误。数组下标的下限不可以是负值,C 项错误。数组下标必须是整型数据,3.12为浮点数,D 项错误。

7. 若有以下程序段:

输出结果是( )。

A.16

B.8

C.4

D.2

答:C

【解析】c 语言中是对二进制的右移运算符,右移相当于将原数做除二操作,它将原数右移相应位数,并将移出的位信息舍去,在高位补0, 将所得的结果再赋值给变量。本题中8的二进制为00001000, 右移一位得 到00000100,所以是4。

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

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

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

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

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

答:A

【解析】实型数据在内存中存储的二进制位数是有限的,而一个十进制实数转化为二进制实数时,其有效数字位数有可能会超过尾数的存储长度,从而导致有效数字丢失而产生误差。在整形数允许范围之内,二进制可以表示任意一个整数。

9. 设有定义:doublex=2.12; ,以下不能完整输出变量x 值的语句是( )。

答:A

【解析】printf 函数控制字符财输出float 类型,%If 输出double 类型。格式控制%m.nf ,表示数据输出总的宽度为m 位,其中小数部分占n 位。当数据的小数位多于指定宽度n 时,截去右边多余的小数,并对截去的第一位小数做四舍五入处理;而当数据的小数位少于指定宽度n 时,在小数的右边补零;当m 小于有效位数时,整数部分输出所有有效数字并且自动对齐,小数部分

第 4 页,共 33 页