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

2016年宁夏大学数学计算机学院程序设计之C程序设计考研复试题库

  摘要

一、选择题

1. 若有以下定义和语句:

则输出结果是( )。 A.5 5 B.10 5 C.10 7 D.5 8 答:A

【解析】strlen 函数是测试字符串长度的函数,求字符串的实际字符个数,不包括字符内,

在字符义字符

之后的所有字符均不计入长度中。所以的含义是一个字符【程序有错,

2. 有以下程序:

应为

而以】

所以s2

所指向的内容实际上是

在所以

开头的字符序列是转

程序运行后的输出结果是。 A.32 B.16 C.1 D.0 答:C

【解析】本题中,将a 赋值为8, 那么a 的二进制表示为“00001000”,将a 向右移动3位,变为了“00000001”,十进制数为1。

3. 若i 和k 都是int 类型变量,有以下for 语句:

下面关于语句执行情况的叙述中正确的是。 A. 循环体执行两次 B. 循环体执行一次 C. 循环体一次也不执行 D. 构成无限循环

答:D

【解析】本题中for 循环判断条件为k=l, 这个语句是赋值语句,总是正确的,所以会陷入无限循环中。

4. 有以下程序:

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

【解析】“++”和“一”运算,当以前缀形式出现时,则先进行加一或减一操作,再取值,当以后缀形式出现时,贝晚取值,再进行加一或减一操作。程序中执行才跳出循环,执行下条语句,即a 为0时再执行

5. 有以下定义和语句:

能给w 中year 成员赋1980的语句是( )。

答:D

【解析】w 是一个结构体变量,Pw 是一个结构体指针变量,指向w 所在的内存单元。A 项错误,pw 是指针,

所以在引用其内部变量时应该用操作符是结构体workers 中的结构体成员s 中的成员。

6. 执行以下程序段后,w 的值为( )。

A.-1

直到while 判断为0时

后输出,最终输出的结果为-1。

而不是BC 两项错误,year

B.NULL C.1 D.0 答:C 【解析】因为真,因此

7. 设有以下说明和语句:( )。

A. B. C. D. 答:A

【解析】题目中表达式。

都是非零整数,因此的值为1。

则与表达式

等价的选项是

又因为

也为

是指向有4个元素的数组指针,a 为二位数组首地址,赋值给数组指针p 。是对数组a 第1行第3列元素的引用。

是数组第1行第3列元素,

B 项错误。是对数组第3行第1列元素的引用,

是数组第3行第1列元素,D 项错误。

A

项正确。与题目中等价,

对数组第1行第3列元素的引用,C 项错误。

8. 有以下程序:

程序的运行结果是( )。 A.21,18 B.81,81 C.21,21 D.18,18 答:A

,替换过程是,用宏调用提供的实参字符串,【解析】带参数的宏的调用格式:宏名(实参表)S 直接置换宏定义命令行中相应形参字符串,非形参字符保持不变。(k+j+2•被置换成k+j+2*k+j+2,计算时先计算2*k,结果为21; S (j+k+2.被置换成j+k+2*j+k+2,计算时先计算2*j,结果为18。程序的运行结果是21,18,故A 选项正确。

9. 若变量已正确定义为int 型,要通过语句

给a 赋值1,

给b 赋值2, 给C 赋值3,以下输入形式中错误的是(u 代表一个空格)( )。

A. B. C. D.