2023 模拟初赛

“流程结构”是编程中用来控制程序执行程序的一种方式,它包括顺序结构,分支结构和循环结构。在一些诗歌作品中,也有对“流程结构”的体现。下列诗歌片段中体现循环结构的是()。

A.如果还能找到你,就让风儿告诉你。 ——《Artificial Emotions》

B.只要我还能够行走,只要我还能够张望,只要我还能够呼吸,就一直走向前方。 ——《Песня ортевой молодости》

C.昔闻洞庭水,今上岳阳楼。 ——《登岳阳楼》

D.啊如果我在,战争中牺牲,啊朋友再见吧,再见吧,再见吧!如果我在,战争中牺牲,你一定把我来埋葬。 ——《Bella Ciao》

解析:

一道概念题,循环结构在诗歌作品里就是排比,所以选B。

错误原因:

把循环结构看成流程结构了,导致看哪一个都不是正确答案(后面才发现挺简单的)。


观察下列代码:

int a[]={5,4,3,2,1};
auto p=a+3;
auto q=&p;
(*q)++;
auto k=*p;

其中,k的类型以及k的值分别为()。

A.int类型,值为11

B.int类型,值为33

C.int指针类型,值为a数组的下标为33的元素的地址

D.int指针类型,值为a数组的下标为44的元素的地址

解析:

一道记忆题,考察对指针的理解。a+33表示a数组里第33个下标。再+11,变成44,数组a里第四个数为11,所以选A。

错误原因:

不知道指针变量,所以蒙了一个( 结果蒙错了 )。


一张大小为611481926114*81922424位彩色图片,使用.bmp格式存储,占用的空间大小约为()。

A.144144 MiB

B.288288 MiB

C.11521152 MiB

D.4848 MiB

解析:

一道计算题,((6114819224)/10242)/8=143.296875((6114*8192*24)/1024^2)/8=143.296875,约等于144144,所以选A。

错误原因:

啊啊啊忘记从Byte转成bit了,所以写错了。


以下程序片段的时间复杂度为()。

int cnt=0;
for(int i=1;i<=n;i++){
	for(int j=1;j<=n;j+=i){
		for(int k=1;k<=n;k+=j){
			++cnt;
		}
	}
}

A.O(n2)O(n^2)

B.O(n2logn)O(n^2logn)

C.O(nlogn)O(nlogn)

D.O(nlog2n)O(nlog^2n)

解析:

一道计算题。时间复杂度的最坏时间是当一层循环等于11时,那就是二层循环要一个一个加,三层循环可以忽略不计,所以时间复杂度为O(n2)O(n^2),选A。

错误原因:

被提示迷惑了。以为正确答案是把所有时间复杂度全部加起来。


依次抛出四个六边骰子,按照抛出顺序将骰子上的数值为a,b,c,d。则a<b,b>c,c<d同时成立的概率为()。

A.95/64895/648

B.4/274/27

C.5/275/27

D.1/61/6

解析:

一道枚举题,枚举后如下:

约分前:190/1296190/1296

约分后:95/64895/648

错误原因:

没有想到枚举(其实就是懒),以后遇到这种题,一定要去枚举所有情况。


观察如下代码:

union U{
	bool flag1,flag2,flag3,flag4,flag5;
	signed short a;
	unsigned short b; 
	enum E{
		CardA=0,
		CardB=1,
		CardC=2,
		CardD=142857
	}e;
}u;

其中,sizeof(u)的值为()。

A.44

B.88

C.1313

D.1616

解析:

一道记忆题,考察对联合体的记忆,而enum枚举体。联合体与结构体的区别是,联合体里的元素都共用一个下标,可以理解成与联合国是一个组织类似。

e 里有4444个整数,也就是int类型,enum枚举体类型中的整数只占一个整型,所以选A。

错误原因:

没有学过联合体,对枚举体也不熟悉。


已知某种可用来维护序列的数据结构,支持O(logn)O(logn)向某个位置后面插入元素,O(n)O(n)查询某个位置的排名,O(nlogn)O(nlogn)遍历整个数组,那么用上述三种操作实现插入排序的时间复杂度最坏为()。

A.O(n2)O(n^2)

B.O(n2logn)O(n^2logn)

C.O(nlogn)O(nlogn)

D.O(nlog2n)O(nlog^2n)

解析:

一道记忆题,那些时间复杂度是诱惑我们的,其实插入排序的时间复杂度不管怎样,最坏都为O(n2)O(n^2)。所以选A。

错误原因:

以为是把上面的时间复杂度加起来得正确答案,其实不管怎样,最坏都为O(n2)O(n^2)


今年是CCF(中国计算机学会)第()次举办CSP-J/S(计算机非专业级别的软件能力认证)?

A.2727

B.2828

C.55

D.44

解析:

一道记忆题,CCF虽然是从19841984年创办的全国青少年计算机程序设计竞赛(NOIP),但是从20192019年创办的全国计算机非专业级别的软件能力认证(CSP-J/S),所以选C。

错误原因:

没有想到从19841984年创办的NOIP与20192019年创办的CSP-J/S的区别,所以算的是19841984年创办的NOIP。

谢谢