2017年沈阳航空航天大学航空航天工程学部823C语言程序设计考研强化模拟题
● 摘要
一、选择题
1. 有以下程序:
以上程序执行后abc. dat文件的内容是( )。
A.China
B.Chinang
C.ChinaBeijing
D.BeijingChina
【答案】B
【解析】pf 是一个文件指针,
件
语句
是将
的前
是将文件位置指针移回到文件开头,语句写入五个字符,所以结果为Chinang 。
2. 有以下程序:
程序运行的结果是( )。
A.*7
B.*3*5
C.*5
第 2 页,共 33 页 执行后,fp 指向可读写的二进制文
个字符的内容写入中,即Beijing
。是从文件的开头位置向
D.*2*6
【答案】A
【解析】程序的功能时输出从5开始的第一个除以3的余数为1,除以5的余数为2的数。在do-while 循环中,总是先执行后判断,即至少会执行一次。在循环中,如果满足(i%3==l)&&(i%5==2), 那么输入i 的值,退出循环。
3. 若函数中有定义语句intk ;,则( )。
A. 系统将自动给k 赋初值0
B. 这时k 中的值无定义
C. 系统将自动给k 赋初值-1
D. 这时k 中无任何值
【答案】B
【解析】intk ;这条语句是定义一个整型变量k ,这是动态定义,编译程序仅为k 开辟存储单元,而没有在存储单元中存放任何初值,此时变量中的值时无意义的。若是静态定义,则会自动初始化,其默认值为0。
4. 有以下程序:
程序运行后输出的结果是。
A.0, 4, 5
B.4, 4, 5
C.4, 4, 4
D.0, 0, 0
【答案】A
【解析】C 语言中可以将多条语句放在同一行,用“;”隔开。赋值运算和逗号运算都是从左
,得A 的值为5, 然后执行C=(A-=A-5), 即将A 到右结合。首先执行A-=A-5,即A=A-(A-5)
的值5赋给变量C , 使得C 的值也为5。然后执行下句逗号表达式中的A=B, 把B 的值0赋给A ,此时A 的值为0, 然后执行B=B+4, 使得B 的值为4,最后打印输出。
5. 有以下程序:
第 3 页,共 33 页
程序运行后的输出结果是( )。
A.3
B.6
C.8
D.12
【答案】B
【解析】fun 函数的功能是返回两个数的算术平均数。
调用,
相当于
,运算,向下取整)输出结果是6。
6. 以下选项中的编译预处理命令行,正确的是( )。
A.#definePI3.14
B.##defineeps0.001
C.#DEFINETRUE
D.#defineintINT
【答案】A
【解析】A 项正确。不带参数的宏定义是用一个指定的标识符来代表一个字符串,其一般形式如下:#define宏名替换文本。需要注意:①在#define、宏名和替换文本之间用空格隔开;②在C 程序中,宏定义的定义位置一般写在程序的开头;③宏名一般用大写字母表示,便于与变量名区别;④宏定义是用宏名来表示一个字符串,在宏展开时以该字符串取代宏名,这只是一种简单的代换,预处理程序对它不做任何检查;⑤宏定义不是语句,在行末不加分号,如加上分号则连分号也一起替换。B 项define 前多了一个#。C 项缺少“替换文本”。D 项不能将一个自定义标识符宏定义为关键字。
7. 有以下函数:
程序运行后的输出结果是( )。
A.3
B.50
C.2
D.96
【答案】D
【解析】执行语句时,首先是a 左移两位,其等效于将a 乘以4, 得到48, 然后
第 4 页,共 33 页
是嵌套其中
(之间的
相关内容
相关标签