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

2017年齐鲁工业大学计算机应用技术研究所671C语言程序设计考研强化模拟题

  摘要

一、选择题

1. 有以下程序:

程序的运行结果是( )。 A.246 B.135 C.123 D.456 【答案】A

【解析】程序执行过程为:定义二维数组s 与指针数组ps , for循环实现将二维数组每一行的首地址赋值给 对应的指针数组元素,然后输出二维数组每行的第二个元素。程序的运行结果是246。

2. 下列选项中,能够满足“若字符串si 等于字符串s2, 则执行ST ”要求的是( )。

A. B. C. D. 【答案】A 【解析】字符串比较不能直接进行比较,字符串判断函数是strcmp 。

3. 表达式的值是( )。

【答案】B

【解析】小数部分被省略,

4. 有以下程序:

需要注意的是,两个整数相除仍然得到整数,

当执行程序时,按下列方式输入数据(从第一列开始,符)

代表回车,注意:回车是一个字

则输出结果是( )。 A.1234 B.12 C.123 D.1234 【答案】C 【解析】

函数的一般调用形式为:scanf (格式控制,输入地址列表)。其中,格式控制

和格式字符组成。

是用双引号括起来的字符串,包括格式字符和普通字符,格式是由1赋给了 a ,2赋给了 b ,然后

函数的功能是从标准输入设备上读入一个字符。根据程序中的格式控制可知,接收输入时分别把

函数提取了一个换行符赋给c ,再提取了一个字符3赋给了

d 。所以程序的输出结果为:

5. 有以下程序(其中k 的初值为八进制数):

程序运行后的输出结果是( )。 A.12 B.11 C.10 D.9

【答案】D

k 的初值是八进制数011, 转换为十进制数就是9, 在输出时自增运算符【解析】

是作为后

缀出现的,因此是先输出9, 然后k 的值再自增1。

6. 有以下程序段:

当执行上述程序段,并从键盘输入:name=Lilinum=1001<回车>后,name 的值为( )。 A.Lili

B.name=Lili C.Lilinum=

D.name=Lilinum=1001

【答案】A

【解析】在C 语言中输入多个字符串时,系统会把空格字符作为输入的字符串之间的分隔符。本题中,由于输入两个变量,所以中间应该以回车键为间隔,当从键盘输入name=Lilinum=1001只是输入第一个变量,并且只将Lili 赋值给了name 。

7. 有以下定义则以下选项中正确的表达式是( )。

【答案】A

【解析】%运算是取两整数相除后余数的运算符,它只适用于整数的运算。A 项正确,果为double 型, 但是通过强制类型转换将其转换为int 型;B 项错误,个优先级的,

先运行

才是正确的;C 项错误,

b 中的

中==和!=是同一

不能作

而因为double 是占8位的,不能自动转换,必须要强制类型转换

为double 型;D 项错误,

为左值。

8. 若想给已定义为int 型的变量a 、b 、c 、d 赋整数1,以下选项中错误的语句是( )。

【答案】A

【解析】赋值是将一个常量的值赋给一个变量,A 项中,变量c 初始值未定义,相当于一个未知数给变量d 赋值,不满足赋值为1的条件。

9. 有以下程序

程序运行后的输出结果是( )。 A.36 B.28 C.32