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

2018年湖南师范大学物理与信息科学院845C语言程序设计之C程序设计考研核心题库

  摘要

一、单选题

1. 有以下程序:

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

A.6

B.1

C.0

D.3

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

2 设有定义inta=0, b=l;, 以下表达式中 ,,.会产生“短路”现象致使变量b 的值不变的是( )。:

A. B. C. D.

【答案】D

【解析】++放在变量前面时,表示将变量+1, 再参与其他操作,D 项,

值是0直接判定与运算结果为0, 忽视b++的值,因此b 值不发生改变。

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

【答案】A

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

4. 下面结构体的定义语句中,错误的是( )。

【答案】B

【解析】C 语言中结构体变量的定义有3种方法:①定义结构体类型的同时定义结构体变量,如C 项;②使 用无名结构体类型定义结构体变量,如D 项;③先定义结构体类型,后定义结构体变量,如A 项。

5. 若有以下函数首部

则下面针对此函数的函数声明语句中正确的是( )。 A. B. C. D.

【答案】A

【解析】函数声明应该和函数调用的参数保持一致,声明时的参数(形参)名字可以省略,数组在参数传递过程中变成指针。

6. 有以下程序:

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

A.1

B.0

C.2

D.4

【答案】A 【解析】右移运算符每次右移一位等价于除2, x=36, 执行后,逻辑与运算,先计算左表达式真假,若为假,不计算右表达式,整个逻辑表达式为假,若左表达式为真,再计算右表达式,之后做逻辑与运算;

为真,

整个逻辑表达式

,为真,A 的ASCII 码为65, a 的ASCII 码为97, 为真,得b=l。

7. 设有定义intx=2;,以下表达式中,值不为6的是( )。

A.x*=x+l

B.x++, 2*x

C.x*=(1+x)

D.2*x, x+=2

【答案】D

【解析】AC 两项,赋值运算优先级最低,所以先做x+1或(1+x),此时为3, 然后做x*=3, 即x=x*(x+l)=6;B 项,做x++运算后得到3, 然后做2*x运算得6, ;D 项,2*x虽然结果为4, 但此时x 的值仍为2, 所以最终为4。

8. 有以下程序

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

A.

B.

c.

【答案】A

【解析】外层循环i 的值分别为123,内层循确分别为123、23和3, 所以答案为A 。

9. 有以下程序: