童扣编程 cspjs 第一轮测试3.docx

上传人:b****3 文档编号:4095539 上传时间:2023-05-06 格式:DOCX 页数:43 大小:57.12KB
下载 相关 举报
童扣编程 cspjs 第一轮测试3.docx_第1页
第1页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第2页
第2页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第3页
第3页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第4页
第4页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第5页
第5页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第6页
第6页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第7页
第7页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第8页
第8页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第9页
第9页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第10页
第10页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第11页
第11页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第12页
第12页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第13页
第13页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第14页
第14页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第15页
第15页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第16页
第16页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第17页
第17页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第18页
第18页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第19页
第19页 / 共43页
童扣编程 cspjs 第一轮测试3.docx_第20页
第20页 / 共43页
亲,该文档总共43页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

童扣编程 cspjs 第一轮测试3.docx

《童扣编程 cspjs 第一轮测试3.docx》由会员分享,可在线阅读,更多相关《童扣编程 cspjs 第一轮测试3.docx(43页珍藏版)》请在冰点文库上搜索。

童扣编程 cspjs 第一轮测试3.docx

童扣编程cspjs第一轮测试3

童扣编程csp/js第一轮测试3

1.在内存储器中每个存储单元都被赋予一个唯一的序号,称为()。

[单选题]*

A.地址(正确答案)

B.序号

C.下标

D.编号

2.编译器的主要功能是()。

[单选题]*

A.将源程序翻译成机器指令代码(正确答案)

B.将源程序重新组合

C.将低级语言翻译成高级语言

D.将一种高级语言翻译成另一种高级语言

3.设x=true,y=true,z=false,以下逻辑运算表达式值为真的是()。

[单选题]*

A.(y∨z)∧x∧z

B.x∧(z∨y)∧z

C.(x∧y)∧z

D.(x∧y)∨(z∨x)(正确答案)

4.现有一张分辨率为2048×1024像素的32位真彩色图像。

请问要存储这张图像,需要多大的存储空间?

()。

[单选题]*

A.16MB

B.4MB

C.8MB(正确答案)

D.2MB

5.冒泡排序算法的伪代码如下:

输入:

数组L,n≥k。

输出:

按非递减顺序排序的L。

算法BubbleSort:

1.FLAG←n//标记被交换的最后元素位置

2.whileFLAG>1do

3・k←FLAG-1

4・FLAG←1

5・forj=1tokdo

6.ifL(j)>L(j+1)thendo

7・L(j)↔L(j+1)

8・FLAG←j

对n个数用以上冒泡排序算法进行排序,最少需要比较多少次?

()。

[单选题]*

A.n^2

B.n-2

C.n-1(正确答案)

D.n

6.设A是介个实数的数组,考虑下面的递归算法:

XYZ(A[1..n])

1.ifn=1thenreturnA[1]

2.elsetemp←XYZ(A[l..n-1])

3.iftemp

4.thenreturntemp

5.elsereturnA[n]

请问算法XYZ的输出是什么?

()。

[单选题]*

A.A数组的平均

B.A数组的最小值(正确答案)

C.A数组的中值

D.A数组的最大值

7.链表不具有的特点是()。

[单选题]*

A.可随机访问任一元素(正确答案)

B.不必事先估计存储空间

C.插入删除不需要移动元素

D.所需空间与线性表长度成正比

8.有10个顶点的无向图至少应该有()条边才能确保是一个连通图。

[单选题]*

A.9(正确答案)

B.10

C.11

D.12

9.二进制数1011转换成十进制数是()。

[单选题]*

A.11(正确答案)

B.10

C.13

D.12

10.5个小朋友并排站成一列,其中有两个小朋友是双胞胎,如果要求这两个双胞胎必须相邻,则有()种不同排列方法?

[单选题]*

A.48(正确答案)

B.36

C.24

D.72

11.下图中所使用的数据结构是()。

[单选题]*

A.栈(正确答案)

B.队列

C.二叉树

D.哈希表

12.独根树的高度为1。

具有61个结点的完全二叉树的高度为()。

[单选题]*

A.7

B.8

C.5

D.6(正确答案)

13.干支纪年法是中国传统的纪年方法,由10个天干和12个地支组合成60个天干地支。

由公历年份可以根据以下公式和表格换算出对应的天干地支。

天干=(公历年份)除以10所得余数

地支=(公历年份)除以12所得余数

例如,今年是2020年,2020除以10余数为0,查表为"庚”;2020除以12,余数为4,查表为“子”所以今年是庚子年。

请问1949年的天干地支是()

[单选题]*

A.己酉

B.己亥

C.己丑(正确答案)

D.己卯

14.10个三好学生名额分配到7个班级,每个班级至少有一个名额,一共有()种不同的分配方案。

[单选题]*

A.84(正确答案)

B.72

C.56

D.504

15.有五副不同颜色的手套(共10只手套,每副手套左右手各1只),一次性从中取6只手套,请问恰好能配成两副手套的不同取法有()种。

[单选题]*

A.120(正确答案)

B.180

C.150

D.30

16.#include

#include

usingnamespacestd;

charencoder[26]={'C','S','P',0};

chardecoder[26];

stringst;

intmain(){

intk=0;

for(inti=0;i<26;++i)

if(encoder[i]!

=0)++k;

for(charx='A';x<='Z';++x){

boolflag=true;

for(inti=0;i<26;++i)

if(encoder[i]==x){

flag=false;

break;

}

if(flag){

encoder[k]=x;

++k;

}

}

for(inti=0;i<26;++i)

decoder[encoder[i]-'A']=i+'A';

cin>>st;

for(inti=0;i

st[i]=decoder[st[i]-'A'];

cout<

return0;

}

输入的字符串应当只由大写字母组成,否则在访问数组时可能越界。

()[判断题]*

对(正确答案)

17.#include

#include

usingnamespacestd;

charencoder[26]={'C','S','P',0};

chardecoder[26];

stringst;

intmain(){

intk=0;

for(inti=0;i<26;++i)

if(encoder[i]!

=0)++k;

for(charx='A';x<='Z';++x){

boolflag=true;

for(inti=0;i<26;++i)

if(encoder[i]==x){

flag=false;

break;

}

if(flag){

encoder[k]=x;

++k;

}

}

for(inti=0;i<26;++i)

decoder[encoder[i]-'A']=i+'A';

cin>>st;

for(inti=0;i

st[i]=decoder[st[i]-'A'];

cout<

return0;

}

若输入的字符串不是空串,则输入的字符串与输出的字符串一定不一样。

()[判断题]*

错(正确答案)

18.#include

#include

usingnamespacestd;

charencoder[26]={'C','S','P',0};

chardecoder[26];

stringst;

intmain(){

intk=0;

for(inti=0;i<26;++i)

if(encoder[i]!

=0)++k;

for(charx='A';x<='Z';++x){

boolflag=true;

for(inti=0;i<26;++i)

if(encoder[i]==x){

flag=false;

break;

}

if(flag){

encoder[k]=x;

++k;

}

}

for(inti=0;i<26;++i)

decoder[encoder[i]-'A']=i+'A';

cin>>st;

for(inti=0;i

st[i]=decoder[st[i]-'A'];

cout<

return0;

}

将第12行的“i<26”改为“i<16”,程序运行结果不会改变。

()[判断题]*

对(正确答案)

19.#include

#include

usingnamespacestd;

charencoder[26]={'C','S','P',0};

chardecoder[26];

stringst;

intmain(){

intk=0;

for(inti=0;i<26;++i)

if(encoder[i]!

=0)++k;

for(charx='A';x<='Z';++x){

boolflag=true;

for(inti=0;i<26;++i)

if(encoder[i]==x){

flag=false;

break;

}

if(flag){

encoder[k]=x;

++k;

}

}

for(inti=0;i<26;++i)

decoder[encoder[i]-'A']=i+'A';

cin>>st;

for(inti=0;i

st[i]=decoder[st[i]-'A'];

cout<

return0;

}

将第26行的"i<26”改为“i<16”,程序运行结果不会改变。

()[判断题]*

错(正确答案)

20.#include

#include

usingnamespacestd;

charencoder[26]={'C','S','P',0};

chardecoder[26];

stringst;

intmain(){

intk=0;

for(inti=0;i<26;++i)

if(encoder[i]!

=0)++k;

for(charx='A';x<='Z';++x){

boolflag=true;

for(inti=0;i<26;++i)

if(encoder[i]==x){

flag=false;

break;

}

if(flag){

encoder[k]=x;

++k;

}

}

for(inti=0;i<26;++i)

decoder[encoder[i]-'A']=i+'A';

cin>>st;

for(inti=0;i

st[i]=decoder[st[i]-'A'];

cout<

return0;

}

若输出的字符串为“ABCABCABCA”,则下列说法正确的是()。

[单选题]*

A.输入的字符串中既有S又有P(正确答案)

B.输入的字符串中既有S又有B

C.输入的字符串中既有A又有P

D.输入的字符串中既有A又有B

21.#include

#include

usingnamespacestd;

charencoder[26]={'C','S','P',0};

chardecoder[26];

stringst;

intmain(){

intk=0;

for(inti=0;i<26;++i)

if(encoder[i]!

=0)++k;

for(charx='A';x<='Z';++x){

boolflag=true;

for(inti=0;i<26;++i)

if(encoder[i]==x){

flag=false;

break;

}

if(flag){

encoder[k]=x;

++k;

}

}

for(inti=0;i<26;++i)

decoder[encoder[i]-'A']=i+'A';

cin>>st;

for(inti=0;i

st[i]=decoder[st[i]-'A'];

cout<

return0;

}

若输出的字符串为“CSPCSPCSPCSP”,则下列说法正确的是()。

[单选题]*

A.输入的字符串中既有P又有K

B.输入的字符串中既有J又有R

C.输入的字符串中既有J又有K

D.输入的字符串中既有P又有R(正确答案)

22.#include

usingnamespacestd;

longlongn,ans;

intk,len;

longlongd[1000000];

intmain(){

cin>>n>>k;

d[0]=0;

len=1;

ans=0;

for(longlongi=0;i

++d[0];

for(intj=0;j+1

if(d[j]==k){

d[j]=0;

d[j+1]+=1;

++ans;

}

}

if(d[len-1]==k){

d[len-1]=0;

d[len]=1;

++len;

++ans;

}

}

cout<

return0;

}

1)若k=l,则输出ans时,len=n。

()[判断题]*

错(正确答案)

23.#include

usingnamespacestd;

longlongn,ans;

intk,len;

longlongd[1000000];

intmain(){

cin>>n>>k;

d[0]=0;

len=1;

ans=0;

for(longlongi=0;i

++d[0];

for(intj=0;j+1

if(d[j]==k){

d[j]=0;

d[j+1]+=1;

++ans;

}

}

if(d[len-1]==k){

d[len-1]=0;

d[len]=1;

++len;

++ans;

}

}

cout<

return0;

}

2)若k>l,则输出ans时,len—定小于n。

()[判断题]*

错(正确答案)

24.#include

usingnamespacestd;

longlongn,ans;

intk,len;

longlongd[1000000];

intmain(){

cin>>n>>k;

d[0]=0;

len=1;

ans=0;

for(longlongi=0;i

++d[0];

for(intj=0;j+1

if(d[j]==k){

d[j]=0;

d[j+1]+=1;

++ans;

}

}

if(d[len-1]==k){

d[len-1]=0;

d[len]=1;

++len;

++ans;

}

}

cout<

return0;

}

3)若k>l,则输出ans时,k^{len}k

len

—定大于n。

()[判断题]*

对(正确答案)

25.#include

usingnamespacestd;

longlongn,ans;

intk,len;

longlongd[1000000];

intmain(){

cin>>n>>k;

d[0]=0;

len=1;

ans=0;

for(longlongi=0;i

++d[0];

for(intj=0;j+1

if(d[j]==k){

d[j]=0;

d[j+1]+=1;

++ans;

}

}

if(d[len-1]==k){

d[len-1]=0;

d[len]=1;

++len;

++ans;

}

}

cout<

return0;

}

4)若输入的n等于:

10^{15}10

15

,输入的k为1,则输出等于()。

[单选题]*

A.1

B.(10^{30}-10^{15})/2(1030−1015)/2

C.(10^{30}+10^{15})/2(1030+1015)/2

D.10^{15}1015(正确答案)

26.#include

usingnamespacestd;

longlongn,ans;

intk,len;

longlongd[1000000];

intmain(){

cin>>n>>k;

d[0]=0;

len=1;

ans=0;

for(longlongi=0;i

++d[0];

for(intj=0;j+1

if(d[j]==k){

d[j]=0;

d[j+1]+=1;

++ans;

}

}

if(d[len-1]==k){

d[len-1]=0;

d[len]=1;

++len;

++ans;

}

}

cout<

return0;

}

5)若输入的n等于205,891,132,094,649(即3^{30}3

30

),输入的k为3,则输出等于()。

[单选题]*

A.3^{30}330

B.(3^{30}-1)/2(330−1)/2(正确答案)

C.3^{30}-1330−1

D.(3^{30}+1)/2(330+1)/2

27.#include

usingnamespacestd;

longlongn,ans;

intk,len;

longlongd[1000000];

intmain(){

cin>>n>>k;

d[0]=0;

len=1;

ans=0;

for(longlongi=0;i

++d[0];

for(intj=0;j+1

if(d[j]==k){

d[j]=0;

d[j+1]+=1;

++ans;

}

}

if(d[len-1]==k){

d[len-1]=0;

d[len]=1;

++len;

++ans;

}

}

cout<

return0;

}

6)若输入的n等于100,010,002,000,090,输入的k为10,则输出等于()。

[单选题]*

A.11,112,222,444,543

B.11,122,222,444,453

C.11,122,222,444,543

D.11,112,222,444,453(正确答案)

28.#include

#include

usingnamespacestd;

intn;

intd[50][2];

intans;

voiddfs(intn,intsum){

if(n==1){

ans=max(sum,ans);

return;

}

for(inti=1;i

inta=d[i-1][0],b=d[i-1][1];

intx=d[i][0],y=d[i][1];

d[i-1][0]=a+x;

d[i-1][1]=b+y;

for(intj=i;j

d[j][0]=d[j+1][0],d[j][1]=d[j+1][1];

ints=a+x+abs(b-y);

dfs(n-1,sum+s);

for(intj=n-1;j>i;--j)

d[j][0]=d[j-1][0],d[j][1]=d[j-1][1];

d[i-1][0]=a,d[i-1][1]=b;

d[i][0]=x,d[i][1]=y;

}

}

intmain(){

cin>>n;

for(inti=0;i

cin>>d[i][0];

for(inti=0;i

cin>>d[i][1];

ans=0;

dfs(n,0);

cout<

return0;

}[判断题]*

错(正确答案)

29.#include

#include

usingnamespacestd;

intn;

intd[50][2];

intans;

voiddfs(intn,intsum){

if(n=

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2