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️⃣ 一步一步来,不着急


相关推荐
Let's Chat Coding5 分钟前
身份识别、身份认证与授权的区别
c++
鹏易灵1 小时前
C++——8.移动语义初探(移动构造、移动赋值)
开发语言·c++·php
凯瑟琳.奥古斯特1 小时前
力扣1008:前序重建BST
开发语言·c++·算法·leetcode·职场和发展
Alvin's Tech Blog1 小时前
内存泄漏会导致操作系统永久丢失内存吗?它会导致应用程序崩溃吗?
c++·内存管理·内存泄漏
会周易的程序员1 小时前
使用 LuaBridge 封装 C++ 日志库 microLog 为 Lua 模块
c++·物联网·junit·lua·日志·iot·aiot
wbs_scy2 小时前
仿 muduo 高并发服务器项目:从 timerfd 到时间轮实现定时任务机制
linux·服务器·c++
Darkwanderor3 小时前
Linux进程优先级操作
linux·运维·c语言·c++
智者知已应修善业3 小时前
【P12159蓝桥杯数组翻转】2025-4-24
c语言·c++·经验分享·笔记·算法·蓝桥杯
盐焗鹌鹑蛋3 小时前
【C++】多态
java·jvm·c++
会周易的程序员4 小时前
microLog 的 log_reader 架构解析:嵌入式日志检索引擎的设计之道
c++·物联网·架构·日志·iot·aiot