#4450. 普及组 CSP-J 第3套初赛模拟试题答案解析
普及组 CSP-J 第3套初赛模拟试题答案解析
单项选择
1.C
答案解析
个人计算机是指台式机、一体机、笔记本电脑、掌上电脑。服务器是提供计算服务的设备。主机是指计算机除去输入输出设备以外的主要机体部分。
2.C
答案解析
可化为同一进制进行比较,通常是十进制。
3.C
答案解析
在ASCII表中大写英文字母是连续编码的,字母E应该比字母A大4。
4.D
答案解析
本题是常识题。
5.A
答案解析
传输控制协议(TCP, Transmission Control Protocol);IP(Internet Protocol)协议,又称网际协议。
6.A
答案解析
分支结点与叶结点的关系:增加1个度为n的结点,相应增加n-1个叶子结点。
7.C
答案解析
图中每条边在计算结点度数时计算了2次,因此是2倍关系。
8.B
答案解析
为了方便阅读和分析,IPv4地址通常被写作点分十进制的形式,即四个字节被分开用十进制写出,中间用点分隔。每部分的取值范围为:0-255.
9.D
答案解析
二分查找最多次数为log₂n向上取整。
10.B
答案解析
已知中序遍历和后序遍历可以唯一确定一棵二叉树,再根据规则得到前序遍历。
11.C
答案解析
电子邮件地址的格式:用户名@域名。
12.A
答案解析
Telnet(远程登录)、E mail(电子邮箱)、TCP/IP(传输控制协议/因特网互联协议)、WWW(万维网)。
13.B
答案解析
线性表链接存储是用链表来存储线性表。线性链表的特点是:每个链表都有一个头指针,整个链表的存取必须从头指针开始,头指针指向第一个数据元素的位置,最后的节点指针为空。当链表为空时,头指针为空值。链表非空时,头指针指向第一个节点。链式存储的缺点是:由于要存储地址指针,所以浪费空间;直接访问节点不方便。
14.B
答案解析
硬盘属于外存,用于程序数据等文档的保存,程序运行时会把程序从硬盘读入到内存(RAM)中运行,ROM为只读存储器,开机自测程序放在ROM中,而CACHE为高速缓存,为缓解CPU和内存的速度不匹配引入,为CPU的一部分。
15.A
答案解析
当A>=B&&B>=C的取值为真时,A>=B和B>=C都为真,从而,可推出A>=C,当三数相等时A=B=C,否则A>C。
阅读程序
16.B
17.B
18.A
19.A
20.C
21.B
答案解析
(1)y数组记录大于x数据对应下标数的个数。交换则作用相好相反。
(2)删掉后,相等的情况也加进来了。
(3)如果改成1,数组存在一次重复计算。
(4)y数组记录大于x数据对应下标数的个数,因此可以看成是从大到小的次序。
(5)本程序是一个二重循环程序,因此时间复杂度为O(n²)。
(6)根据循环找的是比第i个数大的数的个数。
22.B
23.A
24.B
25.B
26.B
27.D
答案解析
(1)因为d数据的下标在[0,10]之间,而x输入后作为d数组的下标,因此范围也应该在[0,10]之间。
(2)语句d[x]=d[x]+1 与语句d[x]++等价。
(3)当某个数没输入时,d数组对应下标的值与前一个下标的值相等。
(4)d数组相邻两数之间只有相等或小于的关系。因此把不等于改为大于效果一样。
(5)依题意,前面的是数i,后面是比数i小的数的个数加1,很容易得出答案。
(6)依题意,按从小到大输出这些数(去重)。
28.A
29.A
30.B
31.B
32.C
33.A
答案解析
(1)根据第20行,可知只要有前面的数小于后面的数,m的值为0可知, while语句的退出条件是前面的数不小于后面的数。
(2)同(1)。
(3)退出条件是前面的数不小于后面的数,包含等于。
(4)在前面m已经有一个非零值,删除“m=1”不影响结果。
(5)本题通过模拟可以得到结果,另通过分析,a[2]每次加2,初值为3,因此a[2]始终是奇数,从而排除A和D,按照类似的方法分析可以快速得到答案。
(6)本程序是三重循环的嵌套,时间复杂度为O(n³)。
完善程序
(1)
34.B
35.A
36.D
37.B
38.C
答案解析
(1)根据菲波拉契数列的规则,要求下一个数,得更新前两个数的值。
(2)当b==n时任务完成,否则返回不超过n的最大值,为继续递归求解做准备。
(3)同(2)
(4)非第一个菲波拉契数前面要添上“+”号。
(5)继续递归,求余下的数(n-a)。
(2)
39.C
40.A
41.B
42.D
43.A
答案解析
(1)用两点间的距离公式求解。
(2)这里p[i]的值为可以假设i点到起点1的距离最短。
(3)查找没加入最小费用集合的点到最小费用集里点的距离最小值的点。
(4)同③,并记录该点。
(5)找到集合外的点与刚加入的点是否有更优的值,并更新最优点。