top1编程
← 返回题目
题解

【入门】求数的量级?

1 条题解

  • 0
    @ 2026-7-31 14:52:20

    解题思路

    题目要求判断一个大数的最高位是什么量级,输出对应的拼音。

    量级划分:

    • 10000~99999:万 wan
    • 100000~999999:十万 shi wan
    • 1000000~9999999:百万 bai wan
    • 10000000~99999999:千万 qian wan
    • 100000000~999999999:亿 yi
    • 1000000000~9999999999:十亿 shi yi

    思路:分档判断。

    用 if-else 从最小的量级开始,判断 n 落在哪个区间,输出对应的拼音。

    注意:n 最大可以到 9999999999(约 100 亿),int 装不下,要用 long long。

    举例:n = 123456789

    • 在 100000000~999999999 之间
    • 输出 yi

    参考代码

    #include <iostream>
    using namespace std;
    
    int main() {
        long long n;
        cin >> n;
    
        if (n >= 10000 && n <= 99999) {
            cout << "wan";
        } else if (n >= 100000 && n <= 999999) {
            cout << "shi wan";
        } else if (n >= 1000000 && n <= 9999999) {
            cout << "bai wan";
        } else if (n >= 10000000 && n <= 99999999) {
            cout << "qian wan";
        } else if (n >= 100000000 && n <= 999999999) {
            cout << "yi";
        } else {
            cout << "shi yi";
        }
        return 0;
    }
    

    复杂度分析

    • 时间复杂度:O(1)
    • 空间复杂度:O(1)
    • 1