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

2017年杭州师范大学阿里巴巴商学院826计算机基础之C程序设计考研冲刺密押题

  摘要

目录

2017年杭州师范大学阿里巴巴商学院826计算机基础之C 程序设计考研冲刺密押题(一) . .. 2

2017年杭州师范大学阿里巴巴商学院826计算机基础之C 程序设计考研冲刺密押题(二) . .. 8 2017年杭州师范大学阿里巴巴商学院826计算机基础之C 程序设计考研冲刺密押题(三) . 14 2017年杭州师范大学阿里巴巴商学院826计算机基础之C 程序设计考研冲刺密押题(四) . 20 2017年杭州师范大学阿里巴巴商学院826计算机基础之C 程序设计考研冲刺密押题(五) . 26

第 1 页,共 32 页

一、选择题

1. 有以下程序

该程序试图通过指针p 为变量n 读入数据并输出,但程序有多处错误,以下语句正确的是( )。

【答案】A

【解析】B 项的正确写法应为

项的正确写法应为

2. 有以下程序:

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

A.12

B.11

C.10

D.9

【答案】C

【解析】x=011表示按照八进制赋值,则十进制数为9,所以输出++x的结果为10。

第 2 页,共 32 页 将变量n 的地址赋给指针p ; C

项的正确写法应为

3. 以下关于宏的叙述中正确的是( )。

A. 宏名必须用大写字母表示

B. 宏定义必须位于源程序中所有语句之间

C. 宏替换没有数据类型限制

D. 宏调用比函数调用耗费时间

【答案】C

【解析】A 项错误,用作宏名的标识符通常习惯用大写字母表示,宏名可以是任何合法的C 语言标识符;B 项错误,在语言中,宏定义可以根据需要写在任何位置:D 项错误,宏调用是在编译前由编译预处理程序完成的,不占运行的时间。

4. 有以下程序

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

【答案】D

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

5. 有以下定义语句,编译时会出现编译错误的是( )。 A. B. C. D.

【答案】D

【解析】a 是char 类型变量,"aa" 是字符串常量,不能将一个字符串赋值给一个字符变量。

第 3 页,共 32 页

6. 若有以下程序:

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

A. 可用S 定义结构体变量

B. 可用T 定义结构体变量

C.S 是struct 类型的变量

D.T 是structS 类型的变量

【答案】B

【解析】S 为结构体类型名,而T 为结构体变量名表。

7. 以下能正确定义字符串的语句是( )。 A. B. C. D.

【答案】A

【解析】字符串末尾一定要有结束标记,双引号括起来的字符串系统会默认添加结束标记。A 项正确,定义 了空字符串str 。B 项错误,str 是char 类型变量,不能用字符串为其赋值;C 项错误,字符串应该用双引号括起 来;D 项错误,如果一个字符数组用来作为字符串使用,一定要人为加入字符串中但是str 缺少结束符。

8. 以下涉及字符串数组、字符指针的程序段,不会产生编译错误的是( )。 A. B. C. D.

【答案】A

【解析】将字符指针变量初始化为一个字符串有两种方式,一种通过赋值运算使一个字符指针指向一个字符串常量:

并且初始化为一个字符串的首地址:

变量,所以不能给一个数组名赋值,

如A 选项正确。另一种是定义一个字符指针变量,字符指针变量与字符数组都可以用来实错误,B 选项错误;(2. 字符型的指针变现字符串的存储和运算,但二者是有区别的:(1. 数组名是一个地址常量,而字符指针变量是一个量的值是可以改变的;(3. 字符指针变量和字符数组在内存中的 存储情形不同,数组指的是按照数组长度分配的若干存储空间,而指针只是一个存储字符串首地址的存储空间,所以相同类型指针可以相互赋值,而数组不能直接用“=”赋值,C 选项错误。数组不可以直接赋值字符 串

.

合法,故D 选项错误。

第 4 页,共 32 页 不合法,只有在数组初始化时可以直接赋值,

如合法,并且定义数组时必须指定数组长度,不