GESP 2024年12月认证 C++ 1级真题

一、单选题(每题 2 分,共 30 分)

👉 点击查看答案
题号123456789101112131415
答案CCDBBDBCCCDCDBD
  1. 2024 年诺贝尔物理学奖得主的主要研究方向是( )。

    • A. 天体物理
    • B. 流体力学
    • C. 人工智能
    • D. 量子理论
  2. 下列软件中属于操作系统的是( )。

    • A. 高德地图
    • B. 腾讯会议
    • C. 纯血鸿蒙
    • D. 金山词霸
  3. 关于代码 printf("Hello,GESP!"); 的正确说法是( )。

    • A. 双引号内不可有汉字
    • B. 双引号可替换为单引号
    • C. 双引号可替换为三个连续单引号
    • D. 双引号可替换为三个连续双引号
  4. C++ 表达式 12 - 3 * 2 && 2 的值是( )。

    • A. 0
    • B. 1
    • C. 6
    • D. 9
  5. N = 2cout << (N / 3 + N % 3) 的输出是( )。

    • A. 0
    • B. 2
    • C. 3
    • D. 4
  6. 执行 cout << 7%3 << ' '<< "7%3"<< ' ' << "7%3={7%3}" 的输出是( )。

    • A. 1 1=1
    • B. 1 7%3 1=1
    • C. 1 7%3 7%3=1
    • D. 1 7%3 7%3={7%3}
  7. 判断“星期天”的代码条件是( )。

    • A. N % 7 != 0
    • B. N % 7 == 0
    • C. N == 0
    • D. N % 7
  8. 代码执行后输出( )。

    int N=0, i;  
    for (i = 1; i < 10; i++)  
        N += 1;  
    cout << (N + 1);  
    • A. 54
    • B. 20
    • C. 19
    • D. 18
  9. 代码输出的是( )。

    int tnt = 0;  
    for (int i = 0; i < 100; i++)  
        tnt += i % 10;  
    cout << tnt;  
    • A. 4950
    • B. 5050
    • C. 450
    • D. 100
  10. 代码输出的是( )。

    int N=0, i, tnt=0;  
    for (i = 5; i < 100; i+=5) {  
        if (i % 2 == 0) continue;  
        tnt += 1;  
        if (i >= 50) break;  
    }  
    cout << tnt;  
    • A. 10
    • B. 9
    • C. 6
    • D. 5
  11. 判断“能被 3 整除的偶数”的条件是( )。

    • A. (N%2)&&(N%3)
    • B. (N%2==0)&&(N%3)
    • C. (N%2)&&(N%3==0)
    • D. (N%2==0)&&(N%3==0)
  12. 代码输出的是( )。

    int cnt=0;  
    for (int i = 1; i < 10; i++)  
        cnt += i++;  
    cout << cnt;  
    • A. 54
    • B. 45
    • C. 25
    • D. 10
  13. 使正方形周长增加 4 的语句是( )。

    • A. a*4;
    • B. a+4;
    • C. a+1;
    • D. ++a;
  14. C++ 表达式 (6 > 2) * 2 的值是( )。

    • A. 1
    • B. 2
    • C. true
    • D. truetrue
  15. 判断“位增数”的代码空缺处应填入( )。

    while(N) {  
        n1 = N % 10;  
        if(n1 >= n2) { ... }  
        n2 = n1, N /=10;  
    }  
    • A. n2 = N%10
    • B. N /= 10
    • C. n2 = N/10, N %= 10
    • D. n2 = N%10, N /= 10

二、判断题(每题 2 分,共 20 分)

👉 点击查看答案
题号12345678910
答案××××××××
  1. 在 Windows 中为文件创建副本的操作是 Ctrl+CCtrl+V。( )
  2. C++ 中 8/38%3 的值相同。( )
  3. cin >> X; cout << X; 能正确接收输入并原样输出。( )
  4. 代码执行后输出 10。( )
    int N = 0;  
    for (int i = 0; i < 10; i++) {  
        continue;  
        N += 1;  
    }  
    cout << N;  
  5. 代码执行后输出 100。( )
    int i;  
    for (i = 0; i <= 100; i++)  
        continue;  
    cout << i;  
  6. 循环体 for (int i = 0; i < 10; i+=3) 会执行 3 次输出。( )
  7. cout << (3,2); 会输出 3,2。( )
  8. studentNamestudent_namesStudentName 是合法变量名。( )
  9. 输入 2e-1 时,cout << (f < 1); 输出 0。( )
  10. breakcontinue 连续使用时作用抵消。( )

三、编程题(每题 25 分,共 50 分)

编程题 1:温度转换

题目描述
根据开尔文温度(K)计算摄氏温度(C)和华氏温度(F),公式为:
[ C = K - 273.15 ]
[ F = C \times 1.8 + 32 ]
若华氏温度超过 212,输出 Temperature is too high!,否则保留两位小数输出 C 和 F。

输入格式
一行,实数 K。

输出格式
一行,提示或两个保留两位小数的数。

样例输入 1

412.00  

样例输出 1

Temperature is too high!  

样例输入 2

173.56  

样例输出 2

-99.59 -147.26  

参考程序

#include <cstdio>  
using namespace std;  

int main() {  
    double K;  
    scanf("%lf", &K);  
    double C = K - 273.15;  
    double F = 32 + C * 1.8;  
    if (F > 212)  
        printf("Temperature is too high!\n");  
    else  
        printf("%.2f %.2f\n", C, F);  
    return 0;  
}  

编程题 2:奇数和偶数

题目描述
统计 n 个正整数中奇数和偶数的个数。

输入格式
第一行为正整数 n,之后 n 行每行一个正整数。

输出格式
两个整数,分别为奇数和偶数的个数。

样例输入

5  
1  
2  
3  
4  
5  

样例输出

3 2  

参考程序

#include<bits/stdc++.h>  
using namespace std;  

int main() {  
    int n, a=0, b=0;  
    cin >> n;  
    for(int i=1; i<=n; i++) {  
        int x;  
        cin >> x;  
        if(x%2 != 0) a++;  
        else b++;  
    }  
    cout << a << " " << b << "\n";  
}