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

2016年江西理工大学理学院凝聚态物理(加试)之C程序设计复试笔试最后押题五套卷

  摘要

一、选择题

1. 有以下程序:

程序运行后的输出结果是( )。 A.6 B.1 C.0 D.3 答:D

【解析】按位与运算符。a=3=118,b=3=118,按位与结果为11B=3,D 项正确。

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

A. B. C. D. 答:A

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

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

A. 在算法设计时,可以把复杂任务分解成一些简单的子任务 B. 在C 语言程序设计中,所有函数必须保存在一个源文件中 C. 只要包含了三种基本结构的算法就是结构化程序 D. 结构化程序必须包含所有的三种基本结构,缺一不可 答:A

【解析】A 项正确,模块化的程序设计方法;B 项错误,C 语言中,函数可以放在不同的源文件中;CD 两项错误,由三种基本结构所构成的程序称为结构化程序,三种基本结构可以任意组合。

第 2 页,共 33 页

4. 有以下程序:

程序运行后的输出结果是( )。 A.2, 4, 8, B.3, 6, 9, C.3, 5, 7, D.1, 3, 5, 答:B

【解析】函数实现的功能是将数组a 中每一行的最大值放于数组b 中

第一行最大值为3,第二行最大值为6,第二行最大值为9。

5. 阅读以下程序:

该程序在编译时产生错误,其出错原因是( )。 A. 定义语句出错,case 是关键字,不能用作用户自定义标识符 B. 定义语句出错,printF 不能用作用户自定义标识符 C. 定义语句无错,scanf 不能作为输入函数使用 D. 定义语句无错,printf 不能输出case 的值 答:A

【解析】在C 语言中,关键字又称保留字,它是系统预先定义的,具有特定含义的标识符, 故不允许用户重新定义。case 为C 语言中的关键字,因此用户不能再定义标识符为case 的变量。

第 3 页,共 33 页

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

A. 简单递归不需要明确的结束递归的条件 B. 任何情况下都不能用函数名作为实参

C. 函数的递归调用不需要额外开销,所以效率很高 D. 函数既可以直接调用自己,也可以间接调用自己 答:D

【解析】D 项正确,C 语言中的函数可以递归调用,S 卩:可以直接或间接地自己调用自己。前者称简单递归, 后者称间接递归。A 项错误,递归必定要有一个明确的结束递归的条件;B 项错误,递归就是把函数名作为实参 的一种特殊情况;C 项错误,函数的递归调用过程中,系统要为每一层调用中的变量开辟存储单元,要记住每一层调用后的返回点,要增加许多额外的开销,通常会降低程序的运行效率。

7. 有以下程序

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

【解析】C 语言中,表达式从右向左计算。

可以写成

等价于

等价于a=a+a=(-6)+(-6)=-12。

8. 设a ,b ,C 是整型变量,且已正确赋初值,以下选项中错误的赋值语句是( )。

答:D

【解析】D 项,再给b 赋

值为1,再计算赋值运算符左边必须是一个变量,但数值2是常量,语法错误。

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

A. 只要是用户定义的标识符,都有一个有效的作用域

B. 只有全局变量才有自己的作用域,函数中的局部变量没有作用域

第 4 页,共 33 页

具有最高优先级,b 先赋值9, 再根据赋值运算符号自右向左进行赋值,