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

2017年南通大学C,C++程序设计复试仿真模拟三套题

  摘要

一、选择题

1. 有如下程序:

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

【答案】A

【解析】A 项正确,room 表示数组首地址,首地址+1,指向room 数组中第二个元素,并将该元素的name 信息进行输出,同理,对第一个元素中的age 信息输出。

2. 若有定义语句:inta=12; ,则执行语句:a+=a- =a*a; 后,a 的值是( )。

A.-264 B.552 C.144 D.264

【答案】A

【解析】赋值运算结合性为自右向左,a+=a-a*a相当于a=a-a*a,a=a+a; 自右向左计算过程为a=a-a*a=_132,a=a+a=-264。

3. 有以下程序:

程序运行后的输出结果是( )。 A.9, 7, 4, 7 B.8, 6,9,6 C.8, 6, 3, 6

D.10,8, 5,8 【答案】A

【解析】由于name 是一个长度为9的一维数组,故在内存中占用9字节长度,而其中字符串

只有7个字符,

函数返回的是该字符串的长度,不包含结束符,str 是一个

函数时,

指针变量,占用4字节长度,但是由于name 首地址赋给了 str 指针变量,在调用返回的是指针对应地址单元的字符串的长度7,A 项正确。

4. 有以下程序

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

【答案】D 【解析】f 函数将数组中前9个元素的值加上对应的下标值。

5. 有以下程序

程序运行后的输出结果是( )。 A.20 B.16 C.12 D.25

【答案】B

【解析】展开后是

6. 以下可以将任意一个两位整数n 的个位数与十位数对换的表达式为( )。

【答案】A

【解析】A 项

得到十位数字,

得到个位数字,将个位数乘以10加上十位数字

实现两位整数个位数与十位

是十位

实现将任意一个两位整数个位数与十位数对换,A 项正确。B 项

得到个位数字,

数之和,B 项错误。C 项

为十位数字,

不能实现题目中要求,C 项错误。D 项

数字,为原两位整数减去十位数字,不是个位数字,D 项错误。

7. 有以下程序:

程序运行后的输出结果是( )。 A.1,3 B.2,3 C.1,4 D.1,2 【答案】A

【解析】其中p=p+l; 只改变指针p 的地址,与p 的内容无关,所以m 值没有改变,而是改变该指针所指地址中的内容,所以n 变为3,m 不变。

8. 有以下程序: