分类
CSP-J/S

红栗CSP-J初赛模拟3

单选题(每题2分,一共15题)
1.计算机基本存储单位是( ),计算机最小的存储单位是( ).
A Byte bit
B bit Byte
C KB Byte
D Byte KB
2.下列软件中不是计算机操作系统的是( ).
A Windows
B Linux
C OS/2
D WPS
3.以下选项能够求得ab的是()。
A pow(a,b)
B ceil(ab)
C sqrt(ab)
D log10(exp(ab))
4.下列数中最大的是( ).
注:选项中 (a)b 表示 b 进制数 a

A(237)8
B(1BF)16
C(10101101)2
D(789)10
5.3 ^ 9 、 3 | 9 和 3 & 9 运算之后的结果是( ).
A 1010 0001 1110
B 0101 0100 1110
C 0101 1011 0001
D 1010 1011 0001
6.以下程序段执行之后的结果为( ).A 12
B 3
C 5
D 13
7.表达式 a + (b – c) * d 的后缀形式是( )。
A a b c – + d *
B a b c – d * +
C a + b c – * d
D b – c + a * d
8.已知小明的生日是在8月28号,已知2010年的8月28号是星期六,从2011到2020的十年中小明共有( )个生日在周末。
A 1
B 2
C 3
D 4
9.结点数量超过300的满二叉树至少有( )层。
A 7
B 8
C 9
D 10
10.设栈S和队列Q的初始状态为空,元素1,2,3,4,5,6依次通过栈S,一个元素出栈后即进入队列Q。若出队的顺序为1,4,6,5,3,2,则栈S的容量至少应该为( )。
A 2
B 3
C 4
D 5
11.假如输入3,输出结果是()
A 33
B 50
C 43
D 100
12.图灵省有四个市,人口总和为129万人。其中A市7万人口,B市30万人口,C市人口比D市人口多,并且A市与C市人口之和比其余两市人口之和多5万人。问C市和D市分别有多少万人?
A 50 22
B 60 32
C 90 62
D 70 22
13.以下哈夫曼编码中,合法并且完整的是( )。
A 000, 001, 010, 011, 10
B 000, 001, 01, 10, 1
C 00, 01, 10, 110, 111
D 00, 100, 101, 110, 111
14.假设一棵二叉树的前序遍历序列为ABDGKEHCFIJ,中序遍历序列为GKDBHEACIFJ,则其后序遍历序列为()。
A KGDHEBFJICA
B KGDHEBIJFCA
C KGDEHBIJFCA
D GKDHEBIJFCA
15.把10个同样的西瓜装在4个同样的袋子里,袋子不能为空,问共有多少种不同的分法?()
A 9
B 24
C 210
D 5040

阅读程序一:选择题(每题1.5分,正确的选T,错误的选F)
1) 输入的3个数字越大,则输出的结果也越大。()
2) 执行完第17行后,b[i] 比 a[i] 相对应的值要大。()
3) 将第18行的 tmp=1 改为 tmp=0,不论输入什么数据,输出结果都是0.()
4) 若输入数据中包含字母,如 3 3 a ,则程序运行会出错。()
单选题(每题3分)
5) 输入2 3 5,输出的结果是( )
A.414
B.415
C.416
D.417
6) (4分) 输入1 1 1,输出的结果是( )
A.36
B.48
C.72
D.108

阅读程序二:
选择题(每题1.5分,正确的选T,错误的选F)
1) 该程序读入1+n*n个整数。()
2) 假设程序的运行内存是512M,若输入的n为100,该程序能够正常运行,并输出结果。()
3) 该程序的输出结果不可能为负数。()
4) 交换第8行和第9行代码的顺序,程序运行结果不变。()

单选题(每题3分)
5) 输入
5
2
-1 4
2 -1 -2
-1 6 4 0
3 2 -1 5 8
,输出的结果是( )
A.11
B.12
C.13
D.14
6) (4分) 输入
8
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 32 33 34 35 36
,输出的结果是( )
A.121
B.120
C.119
D.122

阅读程序三:
选择题(每题1.5分,正确的选T,错误的选F)
1) 若将第16、20行去掉,则程序会出现死循环。()
2) 若将第一行的iostream改为cstdio,则程序会出现编译错误。()
3) 若将第17、21行去掉,则程序会出现死循环()
4) 记L=min(n,m),则时间复杂度为O(L2)。()

单选题(每题3分)
5) (4分) 输入
2 3
,输出的结果是( )

A.1 1
B.2 2
C.1 3
D.3 1
6) (4分) 输入
2 2
,输出的结果是( )

A.1 1
B.1 2
C.2 1
D.2 2

完善程序一: (读入整数) 请完善下面的程序,使得程序能够读入两个 int 范围内的整数, 并将这两个整数分别输出,每行一个。
输入的整数之间和前后只会出现空格或者回车。输入数据保证合法。
例如:
输入:
123 -789
输出:
123
-789
(1)①处应填写()
A. c-‘0’
B. ‘0’
C. c+’0′
D. cin.get()
(2)②处应填写()
A. num=0
B. num=c-‘0’
C. num=c-‘a’
D. num=c
(3)③处应填写()
A. c>=’0’&&c<=’9′
B. c>=’a’&&c<=’z’
C. c>’0’||c<‘9’
D. c!=’-‘
(4)④处应填写()
A. num=num+c-‘0’
B. num=num*10+c-‘0’
C. num=num+c
D. num=num*10+c
(5)⑤处应填写()
A. num=-num
B. num=num+num
C. num–
D. num++

完善程序二:(最大连续子段和) 给出一个数列(元素个数不多于 100),数列元素均为负整数、正整数、0。请找出数列中的一个连续子数列,使得这个子数列中包含的所有元素之和最大,在和最大的前提下还要求该子数列包含的元素个数最多,并输出这个最大和以及该连续子数列中元素的个数。例如数列为4,-5,3,2,4 时,输出 9 和 3;数列为 1,2,3,-5,0,7,8 时,输出 16 和 7。
(1)①处应填写()
A. 1
B. 0
C. n
D. 101
(2)②处应填写()
A. tmp+a[i]>ans
B. tmp+a[i]=ans
C. tmp+a[i]>n
D. tmp+a[i]==ans
(3)③处应填写()
A. <0
B. <ans
C. <tmp
D. <min(0,ans,tmp)
(4)④处应填写()
A. 1
B. 0
C. n
D. i
(5)⑤处应填写()
A. tmp+=a[i]
B. tmp=i+1
C. beg=i
D. beg=i+1