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

2016年武汉大学信息管理学院高级语言程序设计(C)(同等学力加试)复试笔试仿真模拟题

  摘要

一、选择题

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

答:D

【解析】与/优先级相同,所以采用左结合的方式。D 项若改为:

2. 有以下程序:

程序运行后的输出结果是( ) A.1,2,1,2 B.1,2,2,1 C.2,1,2,1 D.2,1,1,2 答:B

【解析】本题首先让指针变量p 和q 分别指向m 和n 的地址空间,然后将p 赋值给r ,让r 指向m ,q 赋值给p ,让p 指向n ,再将r 赋值给q ,让q 指向m ,因此最后p 指向n ,q 指向m 。

3. 设有定义:intx=ll,y=12,z=0; ,以下表达式值不等于12的是( )。

A. (z ,x ,y ) B. (z=x,y ) C.z=(x ,y ) D.z=(x==y) 答:D

【解析】逗号表达式的计算过程是从左到右逐个求每个表达式的值,取最右边一个表达式的值作为该逗号表达式的值。赋值运算结合性为由右向左结合,赋值运算符左值为变量,右值为变

第 2 页,共 34 页

的C 语言表达是( )。

则为正确。

量或常量,且左右两边数据类型相同才能实现赋值。成功实现赋值后以左值为返回值。逻辑表达式成立则返回1,不成立返回0。D 选项逻辑表达式x==y不成立,则z=0,表达式值为0。B 选项逗号表达式X ,y 取y 值为表达式值,然后赋值给z=12,表达式值为12。C 选项逗号表达式(x ,y )取y 值为表达式值,然后赋值给z=12,表达式值为12。A 选项逗号表达式(z ,x ,y )取y 值为表达式值12。故选择D 选项。

4. 有以下程序(其中k 的初值为八进制数):

程序运行后的输出结果是( )。 A.12 B.11 C.10 D.9 答:D

【解析】k 的初值是八进制数011,转换为十进制数就是9,在输出时自增运算符“++”是作为后缀出现的,因此是先输出9,然后k 的值再自增1。

5. 有以下程序:

程序运行后的输出结果是( )。 A.654321 B.116611 C.161616 D.123456 答:A

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

第 3 页,共 34 页

6 若有定义语句.

A. 1

B.

C.

D. 答:B

则错误引用x 数组元素的是( )。

【解析】对一维数组元素可以采用多种方式。直接引用,数组名[下标],数组的大小为n 时,B 项错误,下标的取值范围为0〜(n_l)。数组x 的下标为0〜4, D 项,通过数组名访问项,通过指针访问

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

B. —条语句只能定义一个数组

C. 每个数组包含一组具有同一类型的变量,这些变量在内存中占有连续的存储单元 D. 在引用数组元素时,下标表达式可以使用浮点数 答:C

【解析】C 项正确,数组内部的变量都是同一类型,在内存中是连续存储的。A 项错误,方括号中应当是整型常量表达式,可以使用表达式,只要计算结果是整型常量即可;B 项错误,可以使用逗号隔开,来定义多个数组;D 项错误,引用数组时,下标必须是自然数,还应保证下标不越界。

8. 有以下程序:

程序的输出结果是( )。 A.22 B.18 C.20 D.16 答:D

【解析】语

退出循环。

第 4 页,共 34 页

A 项,溢出。通过指针访问C

A. 数组说明符的一对方括号中只能使用整型常量,而不能使用表达式

相当

于程序执行过程为