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

2017年扬州大学信息工程学院834软件基础之C程序设计考研冲刺密押题

  摘要

一、选择题

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

A. 简单递归不需要明确的结束递归的条件

B. 任何情况下都不能用函数名作为实参

C. 函数的递归调用不需要额外开销,所以效率很高

D. 函数既可以直接调用自己,也可以间接调用自己

【答案】D

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

2. 有如下程序:

程序运行时,从键盘输入:3〈回车〉后,程序输出结果为( )。

A.3, 4,

B.0, 1,

C.3, 4, 5,

D.0, 1, 2, 3,

【答案】D

【解析】break 语句作用是结束整个循环过程,不再判断执行循环的条件是否成立,且在嵌套

循环中,其只跳出最内层的一层循环。本题执行过程为:输入3, 则data=3; 执行for 循环,在

时,if 条件不成立,执行语句依次输出i 值,0,1,2,3; 直到i=4时,if 条件成立,执行break 退出for 循环。故D 选项正确。

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

A.13

B.16

C.17

D.45

【答案】B

【解析】

4. 有以下程序:

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

A.1, 4, 8

B.4, 4, 4

C.1, 2, 4

D.1, 1, 4

【答案】B

【解析】sizeof ( )函数表示求该变量所占字节空间,同时一个指针变量占用4字节长度[在Win32系统中], 因此输出为4。

5. 有以下程序段:

已知字符a 的ASCII 码十进制值为97,则执行上述程序段后输出的结果是( )。

A. 因变量类型与格式描述符的类型不匹配输出无定值

B. 输出项与格式描述符个数不符,输出为零值或不定值

C.a ,97,12k=12

D.a ,97,k=12

【答案】D

的作用是访问数组a 中下标为k

的元素。 k=0时

【解析】字符变量中的值就是该字符的Ascn 代码值,

可以参与对整型变量所允许的任何运算。

c 表示以字符格式输出ch 的值,所以输出为a ; %d表示以十进制代码的形式输出。h

,然后以十进制的值,为97; k 没有对应的输出格式,不输出。在第二个语句中,首先输出“k=”

代码输出k 的值,为12。

6. 下列叙述中错误的是( )。

A.C 程序可以由一个或多个函数组成

B.C 程序可以由多个程序文件组成

C. 一个C 语言程序只能实现一种算法

D. —个C 函数可以单独作为一个C 程序文件存在

【答案】C

【解析】一个C 语言程序可以实现任意多种算法,并没有数量限制

7. 有以下程序:

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

【答案】C

【解析】f 函数的功能:用形参结构体指针b 指向的结构体对形参a 赋值,此时形参结构体a 的值为指针b 指向的值,输出a 即输出指针b 指向的结构体,返回到main 函数后,在输出实参a 的值。

8. 有以下程序: