2017年东南大学5k2程序设计复试仿真模拟三套题
● 摘要
一、选择题
1. 有以下程序
程序运行后的输出结果是( )。 A.6 B.9 C.11 D.7
【答案】A
【解析】首先定义了 3个字符数组p 、q 、r ,并分别被初始化。数组p 指定的大小为20, 初始化列表为中的内容
为
即只指定了前4个元素的内容,根据C 语言的规定,初始化列表不足时,其余
函数,将字符串r 连接到字符串p 之后,即执行后p 表示求字符串q 的长度,得到3, 所以语
句
的作用就是:将字符串q 复制到数组p 的第4个元素位置处,数组p
变成所以字符串p 的长度是6。
2. 有以下程序:
程序运行的结果是( )。 A.0 B.10 C.20 D. 出错
第 2 页,共 14 页
元素均自动初始化为0。然后通过
【答案】C
【解析】fun 函数的功能是申请一个指针p ,把p 指向的存储空间赋值为n ,并返回p 指向的空间的值,即为n 。的返回值为10,所以后a 的值为10,
3. 关于C 语言中数的表示,以下叙述中正确的是( )。
A. 只有整型数在允许范围内能精确无误地表示,实型数会有误差 B. 只要在允许范围内整型和实型都能精确表示
C. 只有实型数在允许范围内能精确无误地表示,整型数会有误差 D. 只有八进制表示的数才不会有误差 【答案】A
【解析】实型数据在内存中存储的二进制位数是有限的,而一个十进制实数转化为二进制实数时,其有效数字位数有可能会超过尾数的存储长度,从而导致有效数字丢失而产生误差。在整形数允许范围之内,二进制可以 表示任意一个整数。
4. 关于程序设计基本概念,以下叙述错误的是( ).
A. 计算机可以直接执行由任意高级语言编写的程序 B. 高级语言都有与之对应的编译程序或解释程序 C. 用任何一种计算机高级语言都可以把算法转换为程序 D. 结构化算法可以解决任何复杂的问题 【答案】A
【解析】A 项计算机只能识别机器语言,不能直接识别由高级语言编写的程序。
.有如下程序
程序运行后的输出结果是( )。
A.2.0 B.1.7 C.2 D.1
【答案】D
【解析】在类型转换过程中,如果较高类型转换成较低类型,直接忽略多余位数。在程序执行过程为:调用函数sub (3.8,2.1. , 3.8—2.1=1.7(double 类型),(int )强制转换将1.7转换成int 类型1, 然后返回1并输出,故D 选项正确。
6. 若变量已正确定义并赋值,则错误的赋值语句是。
第 3 页,共 14 页
5
:
【答案】D
【解析】赋值号的左边必须是一个代表某个存储单元的变量名,赋值号的右边必须是C 语言 中合法的表达式。赋值运算的功能是先求出右边表达式的值,然后把此值赋给赋值号左边的变量。
7. 标准库函数的功能是( )。
A. 从文件f 中读取长度不超过n-1的字符串存入指针S 所指的内存 B. 从文件f 中读取长度为n 的字符串存入指针s 所指的内存 C. 从文件f 中读取n 个字符串存入指针s 所指的内存 D. 从文件f 中读取n-1个字符串存入指针s 所指的内存 【答案】A
【解析】fgets 函数功能是从f 所指文件中读入端自动加一个结束标志
个字符放入s 为起始地址的空间内,并在尾
个字
同时将读/写位置指针向前移动字符串长度个字节。在读出
符之前,如遇到了换行符或EOF , 则读出结束,A 项正确。B 项中“读取长度为n ”错误。C 项与D 项中“读取个字符串”错误,读取的是n-1个字符。
8. 有以下程序:
程序运行后的输出结果是( )。 A.ABCDEFGHIJKLMNOP B.ABCDEFGHHKL C.ABCD D.AEIM 【答案】D
【解析】auto 变量又称为自动变量,函数定义变量时,如果没有指定存储类别,系统就认为所定义的变量具 有自动类别,D 选项正确。static 变量又称为静态变量,编译时为其分配的内存在静态存储区中。register 变量又称为寄存器变量,变量的值保留在CPU 的寄存器中,而不是像一般变量那样占内存单元。当定义一个函数时, 若在函数返回值的类型前加上说明符extern 时,称此函数为外部函数,外部函数在整个源程序中都有效。
二、设计题
第 4 页,共 14 页
相关内容
相关标签