GESP2025年12月认证C++一级真题与解析(编程题2(手机电量显示))

一、先看原题:

二、题目解析:

1、题目故事

📱 小杨的手机是个"小精灵"✨

它会根据电量,用不同方式提醒主人:

🔴 电量 ≤ 10

👉 显示:R

(Red 红色警告)

🟡 10 < 电量 ≤ 20

👉 显示:L

(Low 电量低)

🟢 电量 > 20

👉 直接显示数字(比如 99)


2、输入输出说明

输入:

  • 第一行:数据组数 T

  • 接下来 T 行:每行一个电量 P

输出:

  • 每行对应一个显示结果

3、解题思路(口诀版)

先读组数 → 一组一组处理 → 每组判断一次


4、核心判断逻辑(重点)

cpp 复制代码
if (P <= 10)
    输出 R
else if (P <= 20)
    输出 L
else
    输出 P

📌 判断顺序不能乱!


5、参考程序

cpp 复制代码
#include <iostream>
using namespace std;

int main() {
    int T;
    cin >> T;   // 输入组数

    while (T--) {
        int P;
        cin >> P;   // 当前电量

        if (P <= 10)
            cout << "R" << endl;
        else if (P <= 20)
            cout << "L" << endl;
        else
            cout << P << endl;
    }

    return 0;
}

6、这道题考了什么?

知识点 等级
while 循环 ⭐⭐⭐⭐
if-else ⭐⭐⭐⭐
多组输入 ⭐⭐⭐
输出格式 ⭐⭐⭐

📌 这是 1 级"判断 + 循环"的代表题


❌ 初学者最容易错的 3 个点

1️⃣ 把 <= 写成 <

2️⃣ if 顺序写反

3️⃣ 忘记换行 endl


🎯 总结

💬 "这道编程题,其实不难,

难的是 不敢下手、不敢拆步骤。"

记住这个 万能三步法

1️⃣ 先看清规则

2️⃣ 每个规则写一个判断

3️⃣ 一步一步来,不着急


相关推荐
无限进步_17 小时前
【C++】可变参数模板与emplace系列
java·c++·算法
计算机安禾17 小时前
【c++面向对象编程】第28篇:new/delete vs malloc/free:C++中正确动态内存管理
开发语言·c++·算法
qeen8717 小时前
【算法笔记】各种常见排序算法详细解析(下)
c语言·数据结构·c++·笔记·学习·算法·排序算法
计算机安禾18 小时前
【c++面向对象编程】第32篇:移动语义与右值引用:现代C++性能优化核心
java·c++·性能优化
fish_xk18 小时前
c++11的初见
开发语言·c++·算法
不知名的老吴19 小时前
C++ 中函数对象的形式概述
开发语言·c++
Shan120519 小时前
C++中函数对象之重载 operator()
开发语言·c++·算法
djarmy19 小时前
一级函数头地址指针,(*p_func)的函数头的返回值,(*p_func)的函数头的参数列表
c++
小明同学0119 小时前
C++后端项目:统一大模型接入 SDK(一)
linux·c++·chatgpt
林夕0719 小时前
Qt 6.x 新特性概览:从 Qt 5 到 Qt 6 的升级之路
c++·qt6·跨平台开发