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

2016年北京交通大学理学院08107生物综合测试二之C程序设计复试笔试最后押题五套卷

  摘要

一、选择题

1. 若有定义语句intx=10; 则表达式x-=x+x的值为( )。

A.-20

B.-10

C.0

D.10

答:B

【解析】赋值表达式,首先计算右边表达式,然后在进行赋值。先做x+x,结果为20,再做x-20,结果为-10,赋值给X 。

2. 有以下程序:

程序的运行结果是( )。

A.-1, 0

B.0, 0

C. -1 , -1

D.1, 1

答:A

【解析】本题执行过程为:先取a 值为1, 执行循环,件不成

立,退出循环,再执行得到最后输出故A 项正确。

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

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

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

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

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

答:A

【解析】合法的标识符由字母(大、小写均可)、数字和下划线组成,并且必须以字母或下划

第 2 页,共 33 页 执行再取a 值为0, 判断条

线开头。关键字是指被C 语言保留的,不能用作其他用途的标识符,它们在程序中都代表着固定的含义,用户不可重新定义,A 项正确。预定义标识符是系统已经有过定义的标识符,用户可以重新定义,所以可以作为变量名,B 项错误。变量名除了以字母开头以外,还可以以下划线开头,C 项错误。变量名没有长度限制,但不可超过编译器可以辨识的范围,D 项错误。

4. 有以下程序:

>

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

A.3,3,3

B.2,2,3

C.1,2,3

D.1,1,3

答:A 【解析】

这个空间。

5. 有如下程序:

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

A.Ta=l,b=2

B.Fa=0,b=2

C.Fa=l,b=l

D.Ta=0,b=l

答:C

【解析】题目中判断if 条件是否成立,a++先取值为0,则

第 3 页,共 33 页 仅分配了一份内存空间,但是指针a 、b 和c 同时指向为0,且不计算b++,

而后a 自增得a=l,if 条件不成立执行else 函数体,输出F 。最后执行语句

printf 按照格式输出a=l,b=l。故C 选项正确。

6. 以下关于宏的叙述中正确的是( )。

A. 宏名必须用大写字母表示

B. 宏定义必须位于源程序中所有语句之间

C. 宏替换没有数据类型限制

D. 宏调用比函数调用耗费时间

答:C

【解析】A 项错误,用作宏名的标识符通常习惯用大写字母表示,宏名可以是任何合法的C 语言标识符;B 项错误,在语言中,宏定义可以根据需要写在任何位置:D 项错误,宏调用是在编译前由编译预处理程序完成的,不占运行的时间。

7. 有以下定义:

inta ;

longh ;

double x,y ;

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

答:C

【解析】C 项正确,(int )(x-y )是把x-y 得到的浮点数强制转换成整型。A 项错误,a*y结果是浮点数,不能参与模运算;B 项错误,C 语言中没有<>运算符;D 项错误,x+y是右值,不能给其赋值。

8. 设有定义:

以下选项的四个表达式中与其他三个表达式的值不相同的是( )。

答:C 【解析】表达式值为k 的值,其余为

9. 以下叙述中正确的是( )。

A. 结构体数组名不能作为实参传给函数

B. 结构体变量的地址不能作为实参传给函数

第 4 页,共 33 页 的值。