#G1135. 2023年12月 GESP C++ 一级

2023年12月 GESP C++ 一级

GESP 202312 C++ 一级

第 1 题

以下 C++ 不可以作为变量的名称的是({{ select(1) }})。

  • CCF GESP
  • ccfGESP
  • CCFgesp
  • CCF_GESP

第 2 题

C++ 表达式 10 - 3 * (2 + 1) % 10 的值是({{ select(2) }})。

  • 0
  • 1
  • 2
  • 3

第 3 题

假设现在是上午十点,求出 NN 小时(正整数)后是第几天几时,如输入 2020 小时则为第 2266 点,如 NN 输入 44 则为今天 1414 点。为实现相应功能,应在横线处填写代码是()。

int N, dayX, hourX;
cin >> N;
dayX = _____, hourX = _____;
if (dayX == 0)
    cout << "今天" << hourX << "点";
else
    cout << "第" << (dayX + 1) << "天" << hourX << "点";

{{ select(3) }}

  • (10 + N) % 24, (10 + N) / 24
  • (10 + N) / 24, (10 + N) % 24
  • N % 24, N / 24
  • 10 / 24, 10 % 24

第 4 题

下面的程序用于判断 NN 是否为偶数,横线处应填写代码是( )。

cin >> N;
if (______)
    cout << "偶数";
else
    cout << "奇数";

{{ select(4) }}

  • N % 2 == 0
  • N % 2 = 0
  • N % 2
  • N % 2 != 0

第 5 题

下面对 C++ 代码执行后输出的描述,正确的是( )。

cin >> N;
cnt = 0;
for(int i = 1; i < N; i++)
    cnt += 1;
cout << cnt;

{{ select(5) }}

  • 如果输入的 NN 是小于等于 22 整数,第 55 行将输出 00
  • 如果输入的 NN 是大于等于 22 整数,第 55 行将输出 N1N-1
  • 如果输入的 NN 是大于等于 22 整数,第 55 行将输出 NN
  • 以上说法均不正确。

第 6 题

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

cnt = 0;
for(int i = 1; i < 10; i++){
    cnt += 1;
    i += 2;
}
cout << cnt;

{{ select(6) }}

  • 10
  • 9
  • 3
  • 1

第 7 题

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

cnt = 0;
for(int i = 1; i < 20; i++){
    if(i%2)
        continue;
    else if(i%3==0 && i%5==0)
        break;
    cnt += i;
}
cout << cnt;

{{ select(7) }}

  • 90
  • 44
  • 20
  • 10

第 8 题

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

N = 10;
cnt = 0;
while(1){
    if(N == 0) break;
    cnt += 1;
    N -= 2;
}
cout << cnt;

{{ select(8) }}

  • 11
  • 10
  • 5
  • 4

第 9 题

下面 C++ 代码用于判断一个数是否为质数(素数),在横线处应填入代码是( )。

cin >> N;
cnt = 0;
for (int i = 1; i < N + 1; i++)
    if (N % i == 0)
        _____;
if (cnt == 2)
    cout << N << "是质数。";
else
    cout << N << "不是质数。";

{{ select(9) }}

  • cnt = 1
  • cnt = 2
  • cnt += 1
  • cnt += 1

第 10 题

对下面的代码,描述正确的是( )。

#include <stdlib.h>
using namespace std;
int main(){
    int arr[] = {2,6,3,5,4,8,1,0,9,10};
    for(int i = 0; i < 10; i++)
        cout << arr[i] << " ";
    cout << i << endl;
    cout << endl;
    return 0;
}

{{ select(10) }}

  • 输出 2 6 3 5 4 8 1 0 9 10 10
  • 输出 2 6 3 5 4 8 1 0 9 9
  • 输出 2 6 3 5 4 8 1 0 9 10
  • 提示有编译错误

第 11 题

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

cnt = 0;
for (i = 10; i > 3; i -= 3)
    cnt = cnt + i;
cout << cnt;

{{ select(11) }}

  • 3
  • 21
  • 27
  • 49

第 12 题

定义变量 char c,下面对 c 赋值的语句,不符合语法的是({{ select(12) }})。

  • c = (char)66;
  • c = (char)(66);
  • c = char(66);
  • c = char 66;

第 13 题

下图所示 C++ 代码对大写字母 'A' 到 'Z' 分组,对每个字母输出所属的组号,那么输入 'C' 时将输出的组号是( )。

char c;
while(1){
    cin >> c;
    if(c=='q') break;
    switch(c){
        case 'A': cout << "1 "; break;
        case 'B': cout << "3 ";
        case 'C': cout << "3 ";
        case 'D': cout << "5 "; break;
        case 'E': cout << "5 "; break;
        default: cout << "9 ";
    }
    cout << endl;
}

{{ select(13) }}

  • 3
  • 3 5
  • 3 5 9
  • 以上都不对

第 14 题

某公司新出了一款无人驾驶的小汽车,通过声控智能驾驶系统,乘客只要告诉汽车目的地,车子就能自动选择一条优化路线,告诉乘客后驶达那里。请问下面哪项不是驾驶系统完成选路所必须的({{ select(14) }})。

  • 麦克风
  • 扬声器
  • 油量表
  • 传感器

第 15 题

现代计算机是指电子计算机,它所基于的是体系结构({{ select(15) }})。

  • 艾伦·图灵
  • 冯·诺依曼
  • 阿塔纳索夫
  • 埃克特-莫克利

第 16 题

C++ 表达式 int(3.14) 的值为 3({{ select(16) }})。

  • 正确
  • 错误

第 17 题

C++ 语句 cout << (2 * 3, 3 % 10, 2+3) 的输出为 6,3,5({{ select(17) }})。

  • 正确
  • 错误

第 18 题

for(int i = 1; i < 10; i += 3); 表示从 1 开始到 10 结束间隔为 3,相当于 1、4、7、10({{ select(18) }})。

  • 正确
  • 错误

第 19 题

C++ 表达式 010+100+001 的值为 111({{ select(19) }})。

  • 正确
  • 错误

第 20 题

if 语句中的条件表达式的结果可以为 int 类型({{ select(20) }})。

  • 正确
  • 错误

第 21 题

在下面的 C++ 代码 while(1) continue; 中,由于循环中的 continue 是无条件被执行,因此将导致死循环({{ select(21) }})。

  • 正确
  • 错误

第 22 题

C++ 表达式 ('1'+'1'=='2'? flag=1:flag=2) 的结果值和表达式 (flag==2) 的相同({{ select(22) }})。

  • 正确
  • 错误

第 23 题

在 C++ 的程序中,不能用 scanf 作为变量名({{ select(23) }})。

  • 正确
  • 错误

第 24 题

小杨最近在准备考 GESP,他用的 Dev C++ 来练习和运行程序,所以 Dev C++ 也是一个小型操作系统({{ select(24) }})。

  • 正确
  • 错误

第 25 题

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

  • 正确
  • 错误