2017年上海海洋大学国家海洋局(联合培养)919计算机基础综合[专业学位]之C程序设计考研冲刺密押题
● 摘要
一、选择题
1. 若有以下程序:
以下叙述中正确的是( )。
A. 可用S 定义结构体变量
B. 可用T 定义结构体变量
C.S 是struct 类型的变量
D.T 是structS 类型的变量
【答案】B
【解析】S 为结构体类型名,而T 为结构体变量名表。
2 在源程序的开始处加上,以下叙述正确的是 进行文件引用的原因( )。.
A.stdio. h文件中包含标准输入输出函数的函数说明,通过引用此文件以便能正确使用prinff 、scanf 等函数
B. 将stdio. h中标准输入输出函数链接到编译生成的可执行文件中,以便能正确运行
C. 将stdio. h中标准输入输出函数的源程序插入到引用处,以便进行编译链接
D. 将stdio. h中标准输入输出函数的二进制代码插入到引用处,以便进行编译链接
【答案】A 【解析】文件中包含标准输入输出函数的函数说明,预处理指令是指程序可以在该文件中找到printf ,scanf 等函数,因此答案为A 选项。
3. 以下程序:
程序运行后的结果是( )。
A.0
B.-12
C.-20
D.10
【答案】C
【解析】将函数的宏替
4. 有以下函数:
程序运行后的输出结果是( )。
A.12345
B.23445
C.34756
D.35745
【答案】D
【解析】静态局部变量属于静态存储方式,它具有以下特点:①静态局部变量在函数内定义,它的生存期为 整个源程序;②静态局部变量只能在定义该变量的函数内使用该变量。退出该函数后,尽管该变量还继续存在, 但不能使用它;③允许对构造类静态局部变量赋初值。若未赋以初值,则由系统自动赋以0值;④根据静态局部变量的特点,可以看出它是一种生存期为整个源文件的变量。虽然离开定义它的函数后不能使用,但如再次调用 定义它的函数时,它又可继续使用,而且保存了前次被调用后留下的值。函数第一次调用时,会将数组a 变为 35345, 当第二次调用时,函数内的j 值为2, 所以会将数组a 的第三个元素更改为7, 所以最终结果为35745。
5. 有以下程序:
换代入程序中即可
。
当执行程序时,按下列方式输入数据(从第一列开始,
符)
则输出结果是( )。
A.1234
B.12
C.123
D.1234
【答案】C 【解析】函数的一般调用形式为:scanf (格式控制,输入地址列表)。其中,格式控制
和格式字符组成。是用双引号括起来的字符串,包括格式字符和普通字符,格式是由1赋给了 a ,2赋给了 b ,然后 代表回车,注意:回车是一个字函数的功能是从标准输入设备上读入一个字符。根据程序中的格式控制可知,接收输入时分别把函数提取了一个换行符赋给c ,再提取了一个字符3赋给了 d 。所以程序的输出结果为:
6. 以下关于typedef 的叙述错误的是( )。
A. 用typedef 为类型说明一个新名,通常可以增加程序的可读性
B.typedef 只是将已存在的类型用一个新的名字来代表
C. 用typedef 可以为各种类型说明一个新名,但不能用来为变量说明一个新名
D. 用typedef 可以增加新类型
【答案】D
【解析】用typede 只是将已存在的类型用一个新的名字来代表,并没有增加新类型。
7. 以下选项中,合法的一组C 语言数值常量是( )。
A.12. 0Xa23 4.5e0
B.028 .5e_3 -0xf
C..177 4el.5 Oabc
D.0x8A 10.000 3.e5
【答案】A
【解析】A 项,C 语言中小数必须要有小数点,但是小数部分可以省略,12. 是合法的常量;C 语言中十六进制数以0X 或Ox 开头,0Xa23是指十六进制数a23; 在C 语言中,“e ”或“E ”后跟一个整数来表示以10为底的幂数,B 项,028表示的是八进制,以0开头,0后面的数字只能在0~7之间。C 项,4el.5,e 后面只能跟整数,Oabc 表示八进制,0后面的数字只能在(K7之间;D 项,10,000中不能有逗号。
8. 有以下定义语句,编译时会出现编译错误的是( )。
A.