Logo

2024年3月 GESP C++ 2级

GESP · 2级 · 2024-03

60:00
满分 100
时长 60 分钟
27

2024年3月 GESP C++ 2级认证考试真题(含编程操作题部分)

答题卡 已答 0/27
已答 正确 错误 编程题

单选题(共 15 题,每题 2 分)

1

下列流程图的输出结果是?( )

2

以下选项中不符合 C++变量命名规则的是?( )

3

以下选项中,不能用于表⽰分支结构的C++保留字是?( )

4

下列说法错误的是?( )

5

下列4个表达式中,答案不是整数8的是?( )

6

下面C++代码执行后的输出是?()

int n,a,m,i;
n=3, a = 5;
m = (a - 1) * 2;
for (i=0; i<n-1; i++)
m = (m - 1) * 2;
cout << m;
7

下面C++代码执行后的输出是?()

int n,i,result;
n = 81;
i = 1, result = 1;
while (i * i <= n){
    if (n % (i * i) == 0)
    result = i * i;
    i += 1;
}
cout << result;
8

下面C++代码执行后的输出是?()

int s,t,ans;
s = 2, t = 10;
ans = 0;
while (s != t){
    if (t % 2 == 0 && t / 2 >= s)
    t /= 2;
    else
    t -= 1;
    ans += 1;
}
cout << ans;
9

下面C++代码执行后的输出是?()

int n, masks, days,cur;
n = 17, masks = 10, days = 0;
cur = 2;
while (masks != n){
    if (cur == 0 || cur == 1)
    masks += 7;
    masks -= 1;
    days += 1;
    cur = (cur + 1) % 7;
}
cout << days;
10

以下C++代码判断一个正整数N的各个数位是否都是偶数。如果都是,则输出“是”,否则输出“否”。例如
N=2024时输出“是”。则横线处应填入( )。

int N,Flag;
cin >> N;
Flag = true;
while (N != 0){
    if (N %2 != 0){
        Flag = false;
        _____________
    }
    else
    N /= 10;
}
if(Flag == true)
cout << "是";
else
cout << "否";
11

有句俗话叫“三天打渔,两天晒网”。如果小杨前三天打渔,后两天晒网,一直重复这个过程,以下程序代码
用于判断,第n天小杨是在打鱼还是晒网,横线处应填写?( )

int n,i;
cin >> n;
i = n % 5;
if (__________________) // 在此处填写代码
cout << "晒网";
else
cout << "打鱼";
12

一个数的所有数字倒序排列后这个数的大小保持不变,这个数就是回文数,比如 101 与 6886 都是回文数,
⽽ 100 不是回文数。以下程序代码用于判断一个数是否为回文数,横线处应填写?( )

int n,a,k;
cin >> n;
a = 0;
k = n;
while (n > 0){
    a = __________; // 在此处填写代码
    n /= 10;
}
if (a == k)
cout << "是回文数";
else
cout << "不是回文数";
13

给定两个整数 与 ,打印出一个栅栏图形,这个栅栏应该分成 段,段与段之间的间隔为 +, 段内的填
充为 个 -。形如 , 时,图形如下:

+------+------+------+------+------+

以下程序代码用于绘制该图形,横线处应填写?( )

int n, k, i, j;
n = 5, k = 6;
for (i = 0; i < n; i++){
    __________ // 在此处填写代码
    for (j = 1; j < k; j++)
    cout << '-' ;
}
cout << '+';
14

小杨的⽗母最近刚刚给他买了一块华为手表,他说手表上跑的是鸿蒙,这个鸿蒙是。( )

15

中国计算机学会(CCF)在2024年1月27⽇的颁奖典礼上颁布了王选奖,王选先生的重大贡献是( )。

判断题(共 10 题,每题 2 分)

16

如果有以下C++代码:

double s;
int t;
s = 18.5;
t = int(s) + 10;

那么cout << t的结果为 28.5。

17

Xyz,xYz,xyZ是三个不同的变量。

18

cout << (8< 9< 10)的输出结果为true。

19

for (i = 0; i < 100; i+=2) ;语句中变量i的取值范围是0到99。

20

C++中cout << float(2022)与 cout << float('2022')运行后的输出结果均为2022。

21

已知A的ASCII码值为65,表达式int('C')+abs(-5.8)的值为72.8。

22

bool() 函数用于将给定参数或表达式转换为布尔类型。语句 bool(-1) 返回的是 false 值。( )

23

如果变量a的值使得C++表达式sqrt(a)==abs(a),则a的值为0。( )

24

小杨今年春节回奶奶家了,奶奶家的数字电视要设置ip地址并接入到WIFI盒⼦才能收看节目,那这个WIFI盒
⼦具有路由器的功能。( )

25

任何一个for循环都可以转化为等价的while循环( )。

编程操作题(共 2 题,共 50 分)

26
编程操作题 25分

试题名称:乘法问题

27
编程操作题 25分

试题名称:⼩杨的⽇字矩阵

已答 0/27