【基础】2019 CSP-J初试试题详解(普及组)

1.中国的国家顶级域名是什么?

中国A.cn

回答a

2.二进制数11 1 10 101111和01 065438。

A.01 0010 1000 1011 b . 01 00101001 001

C.01 0010 1000 0001

答案d

分析

3.32位整数变量占用多少字节?

128 C.4 D.8

答案c

解析32÷8=4(字节)

4.如果有以下程序段,其中S、A、B、C已定义为整数变量,A、C已赋值(C大于0):

s = a;

for(b = 1;b & lt= c;b++)s = s-1;

相当于上述程序段功能的赋值语句是什么?

a . s = a-c;b . s = a-b;c . s = s-c;d . s = b-c;

回答a

5.有100个有序数据元素。对半搜索时,最大比较次数是多少?

10

回答a

分析

6.链表没有的特点是什么?

A.插入和删除不需要移动的元素。b .不需要提前预估存储空间。

C.所需空间与线性表d的长度成正比,任何元素都可以随机访问。

答案d

7.7.把八个相同的球放在五个相同的袋子里,让一些袋子空着。有多少个不同的点(如果八个球都放在一个袋子里,不管是哪个袋子,都只是同一个点)?

A.22 B.24 C.18 D.20

答案c

分析

枚举:

8.右边显示了一个二叉树。如果采用顺序存储结构,即使用一维数组元素存储二叉树中的节点(根节点的下标为1,如果一个节点的下标为I,则左子位于下标2i,右子位于下标2i+1),那么数组的最大下标至少为?

10。D.12

答案c

分析2 4-1 = 15

10.319和377的最大公约数是多少?

A.27 B.33 C.29 D.31

答案c

11.新学期开始了,小胖想减肥。健身教练为小胖制定了两个训练计划。方案一:每次连续跑3公里可以消耗300千卡热量(需要半小时);方案二:每次连续跑5公里可以消耗600千卡(耗时1小时)。小胖每周一到周四能抽出半小时跑步,周五到周日能抽出一小时跑步。此外,教练建议小胖每周最多跑21公里,否则他的膝盖会受损。请问,如果小胖想严格执行教练的训练计划,不想伤膝盖,每周跑步最多能消耗多少千卡热量?

公元3000年公元2500年公元2400年公元2520年

答案c

分析

消耗的千卡数与时间成正比。

选项1:

选项2:

为了尽可能多的消耗千卡热量,尽可能少的跑步,尽量使用方案二,每天一个小时最多有三天。剩下的,方案1可以只是锻炼。综上,消耗最大。

12.一副牌有52张牌,四种花色,每种花色有13张牌。假设从这52张牌中随机抽取13张牌,那么同花色的牌至少有多少张?

a4 b . 2 c . 3d . 5

回答a

分析

13.one-有些数可以反过来,比如0,1,8倒过来还是本身,6倒过来就是9,9倒过来还是6,其他数不构成数。同样,有些多位数也可以反过来,比如106就是901。假设一个城市的车牌只由5个数字组成,每个数字可以是0到9。请问这个城市最多有几个车牌?

A.60 B.125 C.75 D.100

答案c

分析一个五位数倒置,第一位数变第五位数,第五位数变第一位数,即第一位数反过来等于第五位数,第五位数反过来等于第一位数。有五种情况:0→0,1→1,8→8,6→9,9→6。同样,第二名和第四名也有五种情况。第三名还是第三名,也就是说只能说0,1和8。根据乘法原理,* * *有。

14.假设二叉树的后序遍历序列为DGJHEBIFCA,中序遍历序列为DBGEHJACIF,其前序遍历序列为?

A.ABCDEFGHIJ·阿卜杜勒·杰菲

答案b

分析

制作一个二叉树的图表:

15.15.以下哪个奖项是计算机科学领域的最高奖项?

A.图灵奖b .鲁班奖c .诺贝尔奖d .普利策奖

答案c

二、读取程序(程序输入不超过数组或字符串定义的范围;判断题,正确的填√,不正确的填×;除特别说明外,1.5分的判断题,3分的选择题,40分的* * *)

1.输入字符串只能由小写字母或大写字母组成。

2.如果将第8行的“i = 1”改为“i = 0”,程序运行时会出错。

3.如果“我

4.如果输入字符串全部由大写字母组成,则输出字符串与输入字符串相同。

5.如果输入字符串的长度是18,则输入字符串与输出字符串最多相差()个字符。

a . 18 b . 6 c . 10d . 1

6.如果输入字符串长度为(),则输入字符串与输出字符串最多相差36个字符。

公元前36年

回答

是非题:×××××

选择题:BB

回答

判断题:√××××

选择题:AA

分析

是非题:

4.15行是否执行取决于14行,与13行无关。

多项选择问题:

1.原来是2n,减去m的对数,就是2n-2m。

2.只存储两个数,即2n-2。

假设输入的n和m都是正整数,x和y都是范围内的整数,完成下面的判断题和选择题:

1.当为时,输出值必须小于。

2.在第27行执行“++ans”之后,ans-必须是一个偶数。

3.A [i]和B [i]不能同时大于0。

4.当右程序执行到13行,X总是小于Y,那么15行就不会执行。

5.如果m x两两不同,m y两两不同,则输出值为()。

A.B. C. D。

6.如果m x两两不同,m y都相等,则输出值为()。

A.B. C. D。

回答

是非题:×√。

选择题:b

分析

是非题:

1.数组A中的数字重复时,取最小值中数字最大的一个,没有错。

2.f的返回函数总是0。

1.如果数组A中有重复的数字,程序运行时就会出错。()

2.如果B数组全为零,则输出为零。()

3.当n=100时,最坏情况下,第12行的比较运算次数最接近:()。

A.5000 B. 600 C. 6 D. 100

4.当n=100时,最好的情况下,第12行比较运算最接近的次数是:()。

A.100 B. 6 C. 5000 D. 600

5.当n=10时,如果满足数组B,对于任意0

A.公元前386年至公元前383年

6.(4分)当n=100时,如果满足数组B,对于任何0 s i

A.582 B. 580 C. 579 D. 581

回答

是非题:×√。

选择题:ADDB

分析

1.(矩阵变化)有一个神奇的矩阵,它是不断变化的。它的变化方式是:数字0变成矩阵,数字1变成矩阵。起初,矩阵只有一个元素0。矩阵改变n次后会变成什么样?

例如,矩阵初始为:矩阵变化1次后:矩阵变化2次后:每行输入不超过10的正整数n。变换n次后输出矩阵。试验完成计划。

提示:

“& lt& lt”表示二进制左移运算符,如

(1)应填写()

A.n % 2 b . 0 c . t . d . 1

(2)应填写()

A.X步,y步B. X,y步C. x步,y D.x,y

(3)应填写()

A.X步进,y步进b . X+步进,y+步进C. x步进,y D. X,y步进

(4)应填写()

A.n-1,n%2 B. n,0 C. n,n%2 D

(5)应填写()的位置

A.1 & lt;& lt(n+1)b . 1 & lt;& ltn c . n+1d . 1 & lt;& lt(n-1)

回答CDBBB

分析

(计数排序)计数排序是一种广泛使用的排序方法。下面的程序使用double关键字counting sort将10000内的n对整数从小到大排序。比如有三对整数(3,4)(3,4)(2,4)(2,4)(3,3)(3,3),那么顺序应该是(2,4)(2,4)(3,3)(3,3)(3)。输入第一行nn,下一行nn,第二行有两个数a[i]a[i]和b[i]b[i],分别代表第二对整数的第一个关键字和第二个关键字。从小到大排序后输出。数据范围和

提示:先排序第二个关键词,再排序第一个关键词。数组ord[]存储第二个关键字排序的结果,数组res[]存储双关键字排序的结果。

试验完成计划。

(1)应填写()

A.++ CNT[I]b . ++ CNT[b[I]]c . ++ CNT[a[I]* maxs+b[I]]d . ++ CNT[a[I]]

(2)应填写()

A.ord[ - cnt[a[i]]] = i B

C.ord[ - cnt[a[i]]] = b[i] D

(3)应填写()

A.++ CNT[b[I]]b . ++ CNT[a[I]* maxs+b[I]]c . ++ CNT[a[I]]d . ++ CNT[I]

(4)应填写()

A.RES[-CNT[a[ord[I]]]= ord[I]

C.RES[-CNT[b[I]]]= ord[I]d . RES[-CNT[a[I]]]= ord[I]

(5)应填写()的位置

A.a[i],b[i] B. a[res[i]],b[RES[I]]c . a[ord[RES[I]]]j b[ord[RES[I]]]d . a[RES[ord[I]]]j b[RES[ord[I]]]

回答BDCAB

分析