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

2018年山西大学计算机与信息技术院876数据结构+C程序设计之C程序设计考研核心题库

  摘要

一、选择题

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

A. 可以用typedef 说明的新类型名来定义变量

B.typedef 说明的新类型名必须使用大写字母,否则会出编译错误

C. 用typedef 可以为基本数据类型说明一个新名称

D. 用typedef 说明新类型的作用是用一个新的标识符来代表已存在的类型名

【答案】B

【解析】typedef 说明的新类型名习惯上用大写字母,但不是必须用大写。

2. 设有定义:

以下选项的四个表达式中与其他三个表达式的值不相同的是( )。

【答案】C 【解析】

3. 设有一个表达式值为k 的值,其余为的值。 的矩阵已经存放在一个M 行N 列的数组x 中,且有以下程序段:sum=0;

以上程序段计算的是( )。

A. 矩阵两条对角线元素之和

B. 矩阵所有不靠边元素之和

C. 矩阵所有元素之和

D. 矩阵所有靠边元素之和

【答案】D

【解析】程序执行过程为:第一个for 循环实现对第一列和第N 列求和。第二个for 循环在上一个for 循环结果上实现对第一行和第M 行从第二个元素到第N-1个元素的求和,总体来说,就是矩阵所有靠边元素之和,故D 选项正确。

4. 有以下函数:

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

A.12345

B.23445

C.34756

D.35745

【答案】D

【解析】静态局部变量属于静态存储方式,它具有以下特点:①静态局部变量在函数内定义,它的生存期为 整个源程序;②静态局部变量只能在定义该变量的函数内使用该变量。退出该函数后,尽管该变量还继续存在, 但不能使用它;③允许对构造类静态局部变量赋初值。若未赋以初值,则由系统自动赋以0值;④根据静态局部变量的特点,可以看出它是一种生存期为整个源文件的变量。虽然离开定义它的函数后不能使用,但如再次调用 定义它的函数时,它又可继续使用,而且保存了前次被调用后留下的值。函数第一次调用时,会将数组a 变为 35345, 当第二次调用时,函数内的j 值为2, 所以会将数组a 的第三个元素更改为7, 所以最终结果为35745。

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

A.gets 函数用于从终端读入字符串

B.getchar 函数用于从磁盘文件读入字符

C.fputs 函数用于把字符串输出到文件

D.fwrite 函数用于以二进制形式输出数据到文件

【答案】B

【解析】fgeto 函数从磁盘文件中读入字符,getchar 函数从终端或者键盘接收字符。

6. 有以下程序

程序的运行结果是( )

A.CDEF

B.ABEF

C.ABCD

D.CDAB

【答案】A

【解析】调用funl 函数将全局变量a 和b 赋值为‘C’和‘D’,然后输出全局变量a 和b ,最后调用fun2 输出局部变量a 和b 的值‘E’和‘F’。

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

A.C 程序中的注释只能出现在程序的开始位置和语句的后面

B.C 程序书写格式严格,要求一行内只能写一个语句

C.C 程序书写格式自由,一个语句可以写在多行上

D. 用C 语言编写的程序只能放在一个程序文件中

【答案】C

【解析】C 程序的注释可以出现在C 程序的任何位置,注释符号:程序中,一行内可写多个语句,每条语句用分号

序文件中,用#indUde命令行实现文件包含功能。

8. 有以下程序:

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

A.6, 1

B.1, 1

C.7, 1

D.1, 2

或。(:结束。用C 语言编写的程序可以放在多个程