2017年北京科技大学547软件综合之程序设计复试仿真模拟三套题
● 摘要
一、选择题
1. 设有如下语句:
则以下叙述中错误的是( )。
A.DA TE 是用户定义的结构体变量
B.structDate 是用户定义的结构体类型
C.DA TE 是用户说明的新结构体类型名
D.struct 是结构体类型的关键字
【答案】A
【解析】C 语言允许用typedef 说明一种新类型名,其一般形式如下:typedef 类型名新类型
DA TE 是这种新类型的名字。DATE ,名;题目中定义了新类型Date ,这种类型变量包含3个成员,
是用户说明的新结构体类型名,不是结构体变量,C 选项叙述正确,A 选项叙述错误,选择A 选项。structDate 是用户定义的结构体类型,B 选项叙述正确。struct 是结构体类型的关键字,D 选项叙述正确。
2. 有以下程序:
则以下叙述正确的是( )。
A. 在main 函数中声明了 findmax 函数
B. 在main 函数中定义了 findmax 函数
C. 在main 函数中两次调用了 findmax 函数
D. 在main 函数内、外重复定义了 findmax 函数
【答案】A
【解析】程序编译是从上到下进行的,所以如果函数定义放在主函数之后,那么在函数调用
时必须提前声明函数,可以在主函数之前声明函数,也可以在主函数中函数调用之前声明函数。题目中函数findmax 定义放在了函数之后,所以主函数中声明了 findma 函数
。
为函数声明
,为函数调用
,
为函数定义。A 选项正确。B 选项是在main 函数外定义的findmax
函数,错误。在main 函数中,出现了一次findmax 函数的声明和一次findmax 函数的调用,不是两次调用,C 选项错误。D 选项在main 函数内不是定义findmax 函数而是声明findmax 函数。
3. 有以下程序段:
该程序段的功能是( )。
A. 输出a 、b 、c 中值相等的数值
B. 输出a 、b 、c 中的最大值
C. 输出a 、b 、c 中的最小值
D. 输出a 的原始值
【答案】D
【解析】程序段执行过程为:从键盘读入3个整型数据分别赋值给a , b ,c ,如果a
4 在源程序的开始处加上.
scanf 等函数
B. 将stdio. h中标准输入输出函数链接到编译生成的可执行文件中,以便能正确运行
C. 将stdio. h中标准输入输出函数的源程序插入到引用处,以便进行编译链接
D. 将stdio. h中标准输入输出函数的二进制代码插入到引用处,以便进行编译链接
【答案】A 【解析】文件中包含标准输入输出函数的函数说明,预处理指令是指程序可以在该文件中找到printf ,scanf 等函数,因此答案为A 选项。
5. 有以下程序:
,进行文件引用的原因以下叙述正确的是( )。A.stdio. h文件中包含标准输入输出函数的函数说明,通过引用此文件以便能正确使用prinff 、
程序运行后的输出结果是( )。
A.21
B.11
C.6
D.1
【答案】A
【解析】将十进制数转换为二进制数进行位运算,5转换为二进制数是101, 再做<<2运算,即为10100, 然后100001等于10101,转换为十进制数为21。
6. 以下函数的功能是计算a 的n 次方作为函数值返回:
为实现上述功能,函数中下画线处应填入的是( )。 A. B. C. D.
【答案】B
【解析】for 循环语句,i=l时,
7. 有以下程序:
程序运行时若输入:
则输出结果是
【答案】B
【解析】scanf 语句接收字符串时遇到空格就认为字符串的结束,但是gets 函数遇到回车才认
,最后返回s 。 。