GESP C++ 真题 · 逐题精解
首页C++八级真题 › 2025年3月 › 第9题

GESP 2025年3月 C++八级 单选题 第9题

C++八级单选题2025年3月第9题

所属知识点:加法原理 难度要求:掌握 考频:中频

「神奇的数字」n²:把 n² 拆成左右两段 nl、nr,若 nl+nr==n 则为神奇数字。统计小于 N 的此类数字个数,横线处应填入:
int count_miracle(int N) {
    int cnt = 0;
    for (int n = 1; n * n < N; n++) {
        int n2 = n * n;
        std::string s = std::to_string(n2);
        for (int i = 1; i < s.length(); i++)
            if (s[i] != '0') {
                int nl = std::stoi(s.substr(0, i));
                int nr = std::stoi(s.substr(i));
                if (________) // 在此处填入选项
                    cnt++;
            }
    }
    return cnt;
}

正确答案:A

题目解析

「神奇数字」定义为:平方数 n² 拆分两段之和等于 n(类似卡普雷卡性质),………

完整解析为会员内容二级及以上的逐题精讲需开通 VIP。一级解析全部免费。前往 GESPPASS 解锁

想系统刷完 GESP C++ 1~8 级真题,并查看每道题的逐题精讲?

进入 GESPPASS 开始练习