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

2017年中国海洋大学面向对象的程序设计复试仿真模拟三套题

  摘要

一、选择题

1. 有以下程序

当执行程序时,按下列方式输入数据(从第1列开始,字符),

则输出结果是( )。 A.12 3 B.12 C.1234 D.12 34

【答案】A

【解析】回车和换行也是字符,会被scanf 函数取字符时取到。所以,a=l, b=2,

2. 有以下程序:

程序的运行结果是( )。 A.a=l, b=0

第 2 页,共 15 页

代表回车,注意,回车也是一个

d=3

B.a=2, b=2 C.a=l, b=l D.a=2, b=l 【答案】D

【解析】x=l,因此外层switch 语句是首先执行case1:后面的语句,进入内层的switch 语句;y=0,执行case0:后面的语句,得a=l,遇到break 语句后退出嵌入的switch 语句。由于外层switch 语句的easel :后面没有break 语句,因此继续执行case2:后面的语句,得a=2,b=l,遇到break 语句后退出第一个switch 语句。结果为a=2,b=l。

3. 有以下程序段,若变量已正确定义并赋值( )。

则与此程序段功能相同的选项是( )。

【答案】A

【解析】程序段执行过程为:如果a>b,输出x ,否则输出y ; 如果a<=b,i 加1,否则j 加1。A 项如果a>b,A 项正确。B 项如果a>b,输出x 且j 加1, 否则输出y 且i 加1, 与题目中功能相同,输出x 且i 加1,否则输出y 且j 加1,与题目中功能不相同,B 项错误。C 项如果a<=b,输出x C 项错误。D 项判断条件为a>=b,且i 加1,否则输出y 且j 加1,与题目中功能不相同,多了a=b,D 项错误。

4. 设有chars[5],c ;, 则调用函数scanf 能正确给s 和c 读入数据的是( )。

A. B. C. D. 【答案】D

【解析】

中放的是字符串,故输入的类型应该是

c 中放的是字符,故输入的是

正确读入数据必须要正确指向S 和C 的地址。

5. 以下选项中能表示合法常量的是( )。

第 3 页,共 15 页

【答案】A

【解析】A 项,表示的是字符串常量。B 项,浮点数的指数部分应该是整型;C 项,单个转义符没有意义; D 项,整数常量中间不能出现逗号。

6. 执行以下程序段后,w 的值为( )。

A.-1 B.NULL C.1 D.0

【答案】C

【解析】逻辑表达式的运算结果或者为所以都为真,因此xlly=l; 又因为

7. 以下不能正确表示代数式

【答案】D

【解析】优先级相同,所以采用从左到右结合的方式。D 项,应该改为:

8. 有以下程序:

编译时编译器提示错误信息,你认为出错的语句是( )。

【答案】A 【解析】A 项,

是不正确的表达式;

或者为为真,因此

因为x=14, y=15都是非零,

的值为1。

的C 语言表达是( )。

第 4 页,共 15 页