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

2016年武汉轻工大学数学与计算机学院C语言程序设计(同等学力加试)复试笔试最后押题五套卷

  摘要

一、选择题

1. 有以下程序:

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

A.10

B.11

C.20

D.21

答:D

【解析】题中定义了一个包含两个元素的结构体数组,其中data[0].a=10,data[0].b=100,data[l].a=20,data[l].b=200。指针p 指向结构体数组的第2个元素,那么p.a 的值为20, p.b 的值为200, 所以输出结果为21。

2. 以下选项中,合法的是( )。

A. B. C. D.

答:A

【解析】A 中是在赋初值时直接赋字符串常量。B 项错误,str4是字符变量不能赋值为字符串常量;CD 两项错误,字符串常量给出的是地址值,而数组名name 是一个地址常量,不能被重新赋值。

3. 若有函数声明

A. 函数参数array ,ptr 都是指针变量

B. 函数参数array 不是指针变量,ptr 是指针变量

C. 调用函数时,实参数组的值将一一复制给array 数组

D. 调用函数时,array 是按值传送,ptr 是按地址传送

答:A

第 2 页,共 35 页 以下叙述正确的是( )。

【解析】数组名为数组的首地址,也是指向数组的指针,所以array 和ptr 都是指针,A 项正确,B 项错误。调用函数时,将实参数组首地址赋给指针array , 而不是传递整个数组元素,C 项错误。调用函数时,ar-ray 与ptr 都是按地址传送的,D 项错误。

4. 设有定义

以下能够代表数组元素的是( )。

A.

B.

C.

D.

答:B

I

I 取出数组元素A 项,小括号和方括号的优【解析】B 项,S+3指向a[3]的地址,

先级高于*

,

等价子

代表元素,对先级相同,从左向右结合,先取的值,然后再进行方括号运算,编译错误;C 项,方括号的优元素进行间址运算,编译错误;D 项,间址操

作符*的优先级高于加号,先取出8指向的数据,然后加3, 并不是数组元素

5. 有以下程序:

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

A.654321

B.116611

C.161616

D.123456

答:A

【解析】函数fun 的功能是,将数组的第一个元素与最后一个元素进行比较,将大者放到前面,再将数组的第二个元素与倒数第二个元素进行比较,同样,大者放到前面,由于数组原来是按从小到大顺序排列的,故通过程序输出的是654321。

6. 有以下程序:

第 3 页,共 35 页

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

A.6, 1

B.1, 1

C.7, 1

D.1, 2

答:C

【解析】表达式. 中,>>是右移符号,数字13换算成二进制后右移1位,再和

中,首先判断13是否大于1,此时条件成立1进行按位或运算,结果为7; 表达式

返回1后,再和1进行或运算,结果为1,因此答案为C 选项。

7. 若有以下程序

则程序的输出结果是( )。

A.1, 2

B.0, 2

C.1, 3

D.2, 3

答:A 【解析】是先判定a 是否等于0, 如果a 等于0, 跳出循环;否则进入循环;但是不管判定是否成功,判定结束后都要执行a++操作。

第一次循环,a 等于-2, 满足条件,执行a++,++b, a 变成-1,b 变成1;

第二次循环,a 等于-1,满足条件,执行a++,++b, a 变成0,b 变成2;

第三次循环,a 等于0, 不满足条件,执行a++,a 变成1,b 仍然是2。

8. 以下关于C 语言函数参数传递方式的叙述正确的是( )。

A. 数据只能从实参单向传递给形参

B. 数据可以在实参和形参之间双向传递

C. 数据只能从形参单向传递给实参

D.C 语言的函数,参数既可以从实参单向传递给形参,也可以在实参和形参之间双向传递,可视情况选择使用

答:A

第 4 页,共 35 页