试卷 2023年12月GESP认证C++等级考试(四级)真题试卷
2023年12月GESP认证C++等级考试(四级)真题试卷
选择题
第 1 题    单选题
下⾯有关函数参数的说法,正确的是( )。
A.

函数参数传递时,主函数当中采⽤值传递⽅式将参数传递给⼦函数时,若⼦函数将参数值改变,主函数当中 的参数值不变。

B.

函数参数传递时,主函数当中采⽤值传递⽅式将参数传递给⼦函数时,若⼦函数将参数值改变,主函数当中 的参数值将随⼦函数⼀样改变⽽改变。

C.

函数参数传递时,主函数如果将参数的地址传递给⼦函数,若⼦函数将参数值改变,主函数当中的参数值将 不改变。

D.

函数参数传递可以不满⾜⼦函数的参数个数要求。

第 2 题    单选题

下⾯C++代码执⾏后,输出的是( )

A.

chen

B.

c

C.

chen a dai

D.

dai

第 3 题    单选题

下⾯C++代码最后执⾏后输出是( )

A.

1

B.

2

C.

3

D.

4

第 4 题    单选题

下⾯C++代码执⾏后的结果是(    )

A.

B.

C.

D.

第 5 题    单选题

下⾯C++代码执⾏后输出是(     )。

A.

1,2,3

B.

1

C.

2

D.

3

第 6 题    单选题

如果变量x的地址是0x6ffe14,下⾯C++代码执⾏以后输出的是(     )。

A.

0x6ffe11

B.

0x6ffe14

C.

0x6ffe18

D.

0x6ffe15

第 7 题    单选题

C++,执⾏下⾯代码后,输出的是(     )。

A.

400

B.

200

C.

20

D.

100

第 8 题    单选题

下列C++语句执⾏以后结果是true的是(      )。

A.

3&&false

B.

5&&2

C.

101&&000

D.

4&true

第 9 题    单选题

在如下的C++代码中实现了对字符串中出现的26个字母的个数统计,横线处应填⼊是(     )。

A.

alpha[i]=alpha[i-1]+1;

B.

alpha[i]=alpha[i]+1;

C.

alpha[i+1]=alpha[i]+1;

D.

alpha[i-1]=alpha[i]+1;

第 10 题    单选题

下⾯C++代码执⾏后⽣成的⽂件其字节数为(     )。

A.

10

B.

16

C.

40

D.

24

第 11 题    单选题

下列C++代码输1,2,3,4,执⾏后,将输出的是(     )。

A.

1#4#

B.

1#3#

C.

1#2#3#4#

D.

1#2#3#4

第 12 题    单选题

以下C++代码⽤于实现每个整数对应的因数,如输12,则输1 2 3 4 6 12;如输18,则输1 2 3 6 9 18。横线处应填⼊代码是(     )。

A.

if(n%i==0)

B.

if(n/i==0)

C.

if(n%i!=0)

D.

if(n/i!=0)

第 13 题    单选题

某公司新出了⼀款⽆⼈驾驶的⼩汽车,通过声控智能驾驶系统,乘客只要告诉汽车⽬的地,车⼦就能⾃动 选择⼀条优化路线,告诉乘客后驶达那⾥。下⾯哪项不是驾驶系统完成选路所必须的。

A.

麦克风

B.

扬声器

C.

油量表

D.

传感器

第 14 题    单选题

计算机是指电⼦计算机,它所基于的是)体系结构。

A.

艾伦·图灵

B.

·诺依曼

C.

阿塔纳索夫

D.

 埃克特-莫克利

第 15 题    单选题

输⼊⼀个正整数N,想找出它所有相邻的因数对,⽐如,输⼊12,因数对有(1,2)(2,3)(3,4)。下⾯哪段代 码找不到所有的因数对?

A.

for(i=1;i<N;i++) if(!(N%i) && !(N%(i+1))) printf("(%d,%d)\n", i, i+1);

B.

for(i=2;i<N;i++) if(!(N%i) && !(N%(i+1))) printf("(%d,%d)\n", i, i+1);

C.

for(i=2;i<N/2;i++) if(!(N%(i-1)) && !(N%i)) printf("(%d,%d)\n", i-1, i);

D.

for(i=1;i<N/2;i++) if(!(N%i) && !(N%(i+1))) printf("(%d,%d)\n", i, i+1);

判断题
第 16 题    判断题

C++的内置函sort()⽀持数组的局部排序。例int a={10,9,8,7,6,5,4,3,2,1},可以⽤ sort(a,a+5),排序{6,7,8,9,10,5,4,3,2,1}(      )

A.
正确
B.
错误
第 17 题    判断题

⽤递归法求n的阶乘,时间复杂度是   O(n)   

A.
正确
B.
错误
第 18 题    判断题

[(1,2)*2]*3C++中是合法的表达式。(  )

A.
正确
B.
错误
第 19 题    判断题

在下⾯的C++代码中,将对1.txt⽂件写hello(            )

A.
正确
B.
错误
第 20 题    判断题

⽂本⽂1.txt1012345个字符组成其间没有空格,当⽤C++代码正常打开⽂件成功并执⾏如下 代码以后,第1⾏长度为5

A.
正确
B.
错误
第 21 题    判断题

执⾏C++cout<<(5||2);后将输1

A.
正确
B.
错误
第 22 题    判断题

C++中,两个字符串相加的运算符为+相当于字符串的合并运算。下⾯C++代码执⾏后,将输出 chenadai

A.
正确
B.
错误
第 23 题    判断题

C++内置函sort()可以对整数、浮点数、字符数组进⾏从⼤到⼩,从⼩到⼤,局部排序。

A.
正确
B.
错误
第 24 题    判断题

⼩杨最近在准备考GESP,他⽤的Dev C++来练习和运⾏程序,所以Dev C++也是⼀个⼩型操作系统

A.
正确
B.
错误
第 25 题    判断题

任何⼀个while循环都可以转化为等价的for循环

A.
正确
B.
错误
编程题
第 26 题    问答题

试题名称:⼩杨的字典

在遥远的星球,有两个国AB 国,他们使⽤着不同的语⾔:A语⾔B 语⾔。⼩杨B 国的翻译官,他的⼯ 作是A语⾔的⽂章翻译B 语⾔的⽂章。

 

为了顺利完成⼯作,⼩杨制作了⼀本字典,⾥⾯记录了   N    A语⾔单词对应B 语⾔单词,巧合的是,这些单词都 由地球上26 个⼩写英⽂字母组成。

 

⼩杨希望你写⼀个程序,帮助他根据这本字典翻译⼀A语⾔⽂章。这段⽂章由标点符!()-[]{}\|;:'",./? <> 和⼀A语⾔单词构成,每个单词之间必定由⾄少⼀个标点符号分割,你的程序需要把这段话中的所A语⾔ 单词替换成它B 语⾔翻译。特别地,如果遇到不在字典中的单词,请使⽤⼤UNK 来替换它。

 

例如,⼩杨的字典中包2 A语⾔单abc d,它们B 语⾔翻译分别a def,那么我们可以A 语⾔⽂abc.d.d.abc.abcd. 翻译B 语⾔⽂a.def.def.a.UNK.,其中,单abcd 不在词典内,因此我 们需要使UNK 来替换它。

 

输入描述

第⼀⾏⼀个整数  N    ,表⽰词典中的条⽬数。保证   N<=100   

 

接下来   N    ⾏,每⾏两个⽤单个空格隔开的字符串    A,B      ,分别表⽰字典中的⼀A语⾔单词以及它对应B 语⾔翻 译。保证所有   A   不重复;保证   A      B   的长度不超过  10  

 

最后⼀⾏⼀个字符串 S,表⽰需要翻译A语⾔⽂章。保证字符串  S    的长度不超过      1000     ,保证字符串 S     只包含⼩写 字母以及标点符!()-[]{}\|;:'",./?<>


输出描述 

输出⼀⾏,表⽰翻译后的结果。

特别提醒

在常规程序中,输⼊、输出时提供提⽰是好习惯。但在本场考试中,由于系统限定,请不要在输⼊、输出中附带任 何提⽰信息。

样例输入1

2
abc a 
d def
abc.d.d.abc.abcd.

样例输出1

a.def.def.a.UNK.
第 27 题    问答题

试题名称:⽥忌赛马

你要和⽥忌赛马。你们各⾃有 N  匹马,并且要进⾏   N  轮⽐赛,每轮⽐赛,你们都要各派出⼀匹马决出胜负。

 

你的马匹的速度分别为   u1,u2....un  ,⽥忌的马匹的速度分别为  v1,v2....vn。⽥忌会按顺序派出他的马匹,请问 你要如何排兵布阵,才能赢得最多轮次的⽐赛?巧合的是,你和⽥忌的所有马匹的速度两两不同,因此不可能出现 平局。

 

输入描述

第⼀⾏⼀个整数      。保证    

接下来⼀⾏    N   个⽤空格隔开的整数,依次为u1,u2....un,表⽰你的马匹们的速度。保证      

接下来⼀⾏    N   个⽤空格隔开的整数,依次为v1,v2....vn,表⽰⽥忌的马匹们的速度。保证    

输出描述

 

输出⼀⾏,表⽰你最多能获胜⼏轮。

特别提醒

 在常规程序中,输⼊、输出时提供提⽰是好习惯。但在本场考试中,由于系统限定,请不要在输⼊、输出中附带任 何提⽰信息。

样例输1

 

3
1 3 5 
2 4 6

样例输1

2

样例解1

 


1 轮,⽥忌派出速度为 2 的马匹,你可以派出速度为3  的马匹迎战,本轮你获胜。

 

2 轮,⽥忌派出速度为 4 的马匹,你可以派出速度为5 的马匹迎战,本轮你获胜。

 

3 轮,⽥忌派出速度为6 的马匹,你可以派出速度为1 的马匹迎战,本轮⽥忌获胜。 

如此,你可以赢2 轮⽐赛。

 

样例输2

5
10 3 5 8 7
4 6 1 2 9

样例输2

5
答题卡
选择题
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
判断题
编程题
26 27
题目总数:27
总分数:100
时间:90分钟