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

2018年北京市培养单位遗传与发育生物学研究所864程序设计之C程序设计考研核心题库

  摘要

一、选择题

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

【答案】B

【解析】C 语言中结构体变量的定义有三种方法:定义结构体类型的同时定义结构体变量;使用无名结构体类型定义结构体变量;先定义结构体类型,后定义结构体变量。

2. 有以下程序:

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

【答案】A

【解析】在for 循环中,对3个结构体元素y 值转换成2进制数后向右移一位,再对此时x ,y 值依次进行

3. 若有定义语句

接着执行以下选项中的语句,则能正确执行的语句是( )。 A.

B. C. D. 【答案】B

【解析】scanf 中参数列表,需为地址,只有B 项符合题意。

4. 有以下程序:

程序运行后的输出结果是( )。 A.ABCDEFGHIJKLMNOP B.ABCDEFGHHKL C.ABCD D.AEIM 【答案】D

【解析】auto 变量又称为自动变量,函数定义变量时,如果没有指定存储类别,系统就认为所定义的变量具 有自动类别,D 选项正确。static 变量又称为静态变量,编译时为其分配的内存在静态存储区中。register 变量又称为寄存器变量,变量的值保留在CPU 的寄存器中,而不是像一般变量那样占内存单元。当定义一个函数时, 若在函数返回值的类型前加上说明符extern 时,称此函数为外部函数,外部函数在整个源程序中都有效。

5. 要求通过while 循环不断读入字符,当读入字母N 时结束循环。若变量已正确定义,以下正确的程序段是( )。

A )B )C )D )【答案】D

【解析】D 项正确,ch 与

表达式从右向左计算,会把_它等价

. 赋值给

表示先把

函数的返回值赋值给ch ,然后判断

函数的返回值是右值,

A 项逻辑错误,B 项错误,是否相等。它表示读入字母’N ’时执行循环;

函数的返回值,而_

(等于)的优先级高于=(赋值),

不可改变,出现编译错误;C 项逻辑错误,

此时ch 的取值是0或1。

6. 以下能正确表述算式

【答案】A

的C 语言表达式是( )。

【解析】A 项正确。sin 是库函数,其参数中的角度要求用弧度制表示。C 语言中义的常量,需要用户自定义或者直接使用是

代替

B 项未替换

误。C 项没有将30度换算成弧度,错误。D 项弧度换算错误,对应于

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

应该除以

不是已定

而不

也没有将30度换算成弧度,错

A. 如果根据算法需要使用无限循环(即通常所称的“死循环”),则只能使用while 语句 B. 对于“for (表达式1; 表达式2; 表达式3)循环体”首先要计算表达式2的值,以便决定是否开始循环

C. 对于“for (表达式1; 表达式2; 表达式3)循环体”,只在个别情况下才能转换成while 语句

D. 只要适当地修改代码,就可以将do-while 与while 相互转换 【答案】D

【解析】D 项正确,C 语言中do-while 语句和while 语句作用是等价的,二者可以经过适当的修改互换。A 项错误,do-while 和for 循环也能写成死循环;B 项错误,for 循环首先执行表达式1; C 项错误,for 循环体经过适当的修改都可以转换成while 语句。

8. 已知大写字母A 的ASCII 码是65,小写字母a 的ASCII 码是97。以下不能将变量c 中的大写字母转换为对应小写字母的语句是( )。

A.c=c+32 B. C. D. 【答案】B

【解析】大写字母转换为对应小写字母,即加上32, B 项不是累加32。

9. 有以下程序: