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

2017年中山大学S3505001电子工程基础综合之C程序设计复试实战预测五套卷

  摘要

一、选择题

1. 有如下程序:

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

【答案】A

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

2. 以下叙述中错误的是( )。

A. 用typedef 定义新的类型名后,原有类型名仍有效

B. 可以用typedef 将已存在的类型用一个新的名字来代表

C. 可以通过typedef 增加新的类型

D. 用typede 可以为各种类型起别名,但不能为变量起别名

【答案】C

【解析】关键字typedef 的作用只是将C 语言中已有的数据类型作置换,并不是增加新的类型,因此C 项错误。

3. C 语言程序中,若函数无返回值,则应该对函数说明的类型是( )。

A.int

B.double

C.char

D.void

【答案】D

【解析】A 项,int 表示返回值是整型;B 项,double 表示返回值是双精度型;C 项,char 表示返回值是字符型;D 项,void 表示无返回值。

4. 若有函数:

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

A. 调用fun 函数时只有数组执行按值传送,其他实参和形参之间执行按地址传送

B. 形参a 和n 都是指针变量

C. 形参a 是一个数组名,n 是指针变量

D. 调用fun 函数时将把double 型实参数组元素一一对应地传送给形参a 数组

【答案】B

【解析】AC 两项错误,函数中的形参

一个指针,并没有把数组的元素顺序赋值。

5. 有以下程序

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

A.1, 2

B.2, 4

C.1, 4

D.2, 3

【答案】A

【解析】当把结构体变量中的数据作为一个整体传送给相应的形参时,传递的是实参结构体变量中的值,系统将为结构体类型形参开辟相应的存储单元,并将实参中各成员的值一一对应赋给形参中的成员,函数中形参结构体变量的改变不会影响到实参结构体变量。所以,函数f 不会改变a 中的数据。

6. 有以下程序

已经退化为一个指针;D 项错误,fun 中只是传入

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

A.0

B.z

C. 元素的地址

D. 字符y 的地址

【答案】B

【解析】pc 值字符串指针,指向字符串

7. 有以下程序:

若文本文件filea.txt 中原有内容为:hello ,贝U 运行以上程序后,文件

( )。

A.Helloabc

B.abclo

C.abc

D.abchello

【答案】C 【解析】为写而打开文本文件。这时,如果指定的文件不存在,系统将用在fopen 调用

文件以写的形式打开再利用fprintf 函中指定的文件名建立一个新文件; 如果指定的文件已存在,则将从文件的起始位置开始写,文件中

原有的内容将全部消失数对文件进行操作,而

故中的内容是abc 。 是先将文件清空,再写入,所以本题是将abc 写入

中的内容为等价于

8. 以下关于指针的叙述正确是( )。

A. 所有类型的指针变量所占内存的大小是一样的

B. 指针变量所占内存的大小与其类型有关,char 型指针变量只占1个字节,double 型指针变量占8个字节

C. 指针变量可直接指向任何类型的变量,而不会出现编译或运行错误