1842: 入门级 CSP-J 第7套初赛模拟试题
题目描述
入门级 CSP-J 第7套初赛模拟试题
一、单项选择题(共15题,每题2分,共计30分;每题有且仅有一个正确选项)
1.以下属于系统软件的是:( )。
A.C++编译器 B. 腾讯QQ C.CAD D. 游戏软件
2. 年 月 日在国际电信标准组织3GPP RAN 第78次全体会议上,5G NR 首发 版本正式发布,这是全球第一个可商用部署的5G标准。( )
A.2017年8月18日 B.2018年 1 月 1 日
C.2017年12月25日 D.2017 年12月21 日
3.如果用一个字节来表示整数,最高位用作符号位,其他位表示数值。例如:00000001 表示 +1,10000001 表示-1,试问这样表示法的整数A的范围应该是( )。
A.-127<=A<=127 B.-128<=A<=128
C.-128<=A<128 D.-127<=A<=128
4.下列属于网络模型的名称是( )。
A.LAN B.TCP/IP C.FTP D.SMTP
5. 在 C++中,(-7)%(-5)等于( )。
A.2 B.-2 C.3 D.-3
6.学号为1到30的小朋友顺时针排成一圈,从1号小朋友开始顺时针报数,从数字1开始 数下去,1,2,3,…,28,29,30,31,32,…,一圈又一圈,问当数到数字n, 所在的小朋友的学 号为多少?( )。
A.(n-1)%30 B.1+(n-1)%30 C.(n+1)%30-1 D.(n+1)%30
7.一棵完全二叉树的结点总数为41,其叶结点数为( )。
A.18 个 B.19 个 C.20个 D.21 个
8.给出3种排序:插入排序、冒泡排序、选择排序。这3种排序的时间代价分别是( )。
A.0(n) 、0(n²) 、0(log₂n) B.0(log₂n) 、0(n) 、0(n²)
C.0(n²) 、0(n) 、0(n) D.0(n²) 、0(n²) 、0(n²)
9.请给以下四个事件发生的时间排序( )。
1. 举办第一次 NOIP
2.举办第一次 NOI网络同步赛 3.NOIP提高组由四题改为三题 4.举办第一次 APIO
A.1234 B.1243 C.2134 D.2143
10. 以下在 OSI 模型中属于TCP/IP 模型中的应用层的是( )。
A.应用层 B.网络层 C.数据链路层 D. 表示层
11.以下关于图的不正确说法是( )。
A.所有顶点的度数之和等于边数的2倍
B. 所有顶点的度数之和不一定等于边数的2倍
C. 任意一个图一定有偶数个奇点
D.在有向图中顶点的入度之和等于出度之和
12.6个人分乘两辆不同的汽车,每辆车最多坐4人,则不同的乘车方法数为( )。
A.40 B.50 C.60 D.70
13.为了实现两数交换,代码如下:
void swapAB(int &a,int &b) {
b=a-b; a=a-b;
}
则空格内要填入的语句是( )。
A.a=a+b B.a=a*b; C.a=a-b; D.a=a&b;
14.某数列有1000个各不相同的数,由低到高按序排列,现要对该数列进行二分法检索,在 最坏的情况下,需要检索( )个数据。
A.1000 B.10 C.100 D.500
15.以下简称和全称不对应的是( )。
A.NAT(Network Address Translation)
B.TCP(Transmission Control Protocol)
C.ARP(Adobe Resolution Protocol)
D.ICMP(Internet Control Message Protocol)
二、阅读程序(程序输入不超过数组或字符串定义的范围:判断题正确填“T”,错误填“F”; 除特殊说明外,判断题1.5分,选择题4分,共计40分)
1.
●判断题
(1)输入必须全要是字母,否则无法被识别。( )
(2)将10行的j全部换成i是有问题的。( )
(3)本程序的功能是统计两个字符串的最长公共子序列长度。( )
(4)本程序的时间复杂度为0(n²) 。( )
●选择题
(5)若输入的两个字符串长度均为12,那么输出最大为( )。
A.0 B.144 C.12 D.24
(6)若s1 长度为4,输出为6,则s2 的长度至少为( )。
A.1 B.2 C.3 D.4
2.
注:输入流中1<=x<=y<=m
●判断题
(1)输入的x 和y 可以是全体整数。(
)
(2)将14行的清零过程除去没有问题。( )
(3)将17行与18行交换位置不会影响最终结果。( )
(4)将11行的x 改成x-1 并把12行的y+1 改成y 不会影响最终结果。( )
●选择题
(5)现在已知输入的n 与 m, 则答案的极差为( )。
A.n-m B.2n-m C.nm-n D.n²-2m
(6)在(1)的基础上,除去“注”中的条件,则答案的极差为( )。
A.2n+2nm B.n+m C.2n+2m D.mn+m
●判断题
(1)将第7行中int 换为long long 后程序依然能通过编译。( )
(2)change 与 changel两个函数等价。( )
(3)将第12行换为b=&c; 输出值不变。( )
(4)将第8行换为 int*b=a+1; 输出值不变。( )
●选择题
(5)输出结果的最大值是( )。
A.6 B.4 C.7 D.5
(6)输出结果的乘积是( )。
A.6804 B.5760 C.11520 D.13608
三、完善程序(单选题,每小题3分,共计30分)
1.给出N 个整数,要统计每个数前面有多少比它大的数字。比如有5个数的数列:25134, 则 第 1 个数2之前有0个数比它大;第2个数5之前有0个数比它大;第3个数1之前 有2个数比它大;第4个数3之前有1个数比它大;第5个数4之前有1个数比它大。
数据范围:每个数范围是[0...200],N<=10⁵
(1)①处应该填( )。
A.cin>>c[i] B.cin>>d[i] C.read(c[i]) D.read(d[i])
(2)②处应该填( )。
A.ans++ B.c[i]=d[i] C.ans=0 D.c[i]++
(3)③处应该填( )。
A.d[i] B.c[i]+1 C.d[i]+1 D.c[i]
(4)④处应该填( )。
A.c[j]+=d[i] B.ans+=(c[j]==1)
C.ans++ D.ans+=c[j]
(5)⑤处应该填( )。
A.c[d[i]]++ B.c[i]++ C.ans=c[i] D.d[c[i]]++
2.给定 n 个数 a₁,…,a 。 求 n 个数字当中第1到第r 个数当中的中位数,我们可以用二分 的经典思想来解决此问题。所谓中位数就是n 个数中从小到大排序
(1)①处应填( )。
A.maxn B.maxn+1 C.maxn-1 D.n*2
(2)②处应填( )。
A.I+r<n B.l<=r C.l<r D.1+1<r
(3)③处应填( )。
A.l+r B.(l+r)>>1 C.r-l+1 D.r-l
(4)④处应填( )。
A.1 B.r C.Ift D.rgt
(5)⑤处应填( )。
A.1 B.r C.Ift D.rgt