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

2016年中山大学移动信息工程学院S4605001计算机综合考试)之C语言程序设计复试笔试仿真模拟题

  摘要

一、选择题

1. 若有以下程序段

不能正确引用字符串的选项是( )。

A. B. C. D.

答:D

【解析】strp 是char *类型、长度为4的数组,4个指针分别指向字符串数组str 中的4个字符串。D 项错误,step 是char*的数组,不能引用字符串。A 项正确,引用strp 数组中第一个指针指向的内容,gpaa”; B 项正确,str 是字符串数组,引用数组中的”aa”; C 项正确,

于访问strp 中第四个指针指向的内容,即 ”d”。

2. 若有定义

执行

语句时,若从键盘输人

876543.0

则a 和b 的值分别是( )。

A.87和6.0

B.876和543.0

C.87和543.0

D.76和543.0

答:A

【解析】scarlf ( )函数的一般形式为:scanf (格式控制,地址表列)。其中,“格式控制”是用双引号括起来的字符串,也称“转换控制字符串”,它包括两种信息:①格式说明,由“%”和格式字符组成;②普通字符,即需要原样输入的字符。“地址表列”是需要接收输入数据的一系列变量的地址。本题中的“格式控制”是“%

所以scanf ( )函数将87赋给a , 6赋给b 。

第 2 页,共 33 页 等价其中%2d 的意思是要输入一个整数,但该整数最宽只占2个字符,而%f 是要输入一个浮点数。而题目要求输入的是876和543.0,

3. 以下结构体类型说明和变量定义中正确的是( )。

答:A

A 项,B 项,【解析】用typedef 定义结构体类型名REC 后,可以用REC 定义变量。“structREC ;”

后面不应加分号;C 项,没有这样的书写形式;D 项,REC 定义的是一个变量,不是结构体类型,因此不能用来定义结构体变量。

4. 下面是有关C 语言字符数组的描述,其中错误的是( )。

A. 不可以用赋值语句给字符数组名赋字符串

B. 可以用输入语句把字符串整体输入给字符数组

C. 字符数组中的内容不一定是字符串

D. 字符数组只能存放字符串

答:D

【解析】字符数组可以用来存放单个的字符或者字符串。

5 若有定义语句,

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

A. 1

B.

C.

D.

答:B

【解析】对一维数组元素可以采用多种方式。直接引用,数组名[下标],数组的大小为n 时,

B 项错误,下标的取值范围为0〜(n_l)。数组x 的下标为0〜4, A 项,溢出。通过指针访问C

D 项,通过数组名访问 项,通过指针访问

6. 按照C 语言规定的用户标识符命名规则,不能出现在标识符中的是( )。

A. 大写字母

B. 连接符

C. 数字字符

D. 下划线

第 3 页,共 33 页

答:B

【解析】C 语言中标识符只能由下划线、字母和数字组成,且不能以数字开头。

7. 有以下程序:

程序运行后从第一列开始输入以下数据:

2473<回车>

程序的输出结果是( )。

A.668977

B.4444

C.6677877

D.68766

答:A

【解析】本题执行过程为:输入

句,跳出分支结构;输入

7,7,执行break

8. 有如下程序:

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

A.12

第 4 页,共 33 页 首先匹配caseO , 依次输出6, 6, 后执行break 语匹配case2,输出8,执行break 语句,跳出分支结构;输

匹配default , 输出9,执行break 语句,跳出分支结构;输入匹配easel ,依次输出语句,跳出分支结构。输入回车,结束循环。