返回

代码人生:用代码写人生

闲谈

PAT乙级 | 1002 写出这个数

大家好,欢迎来到代码人生,我是你们的老朋友####。今天,我们来做一道有趣的题:PAT乙级 | 1002 写出这个数。

这道题很简单,题目要求我们对给定的一个正整数进行各位数字之和的计算,然后再用汉语拼音把和的每一位数字写出来。

我们先来看一下题目中的一些重要信息:

  1. n是一个正整数,小于10​100​​。
  2. 和的每一位数字都要用汉语拼音写出来。

根据这些信息,我们可以写出以下代码:

#include <iostream>
#include <string>

using namespace std;

int main() {
    int n;
    cin >> n;

    int sum = 0;
    while (n > 0) {
        sum += n % 10;
        n /= 10;
    }

    string s = to_string(sum);
    for (int i = 0; i < s.length(); i++) {
        switch (s[i]) {
            case '0':
                cout << "ling";
                break;
            case '1':
                cout << "yi";
                break;
            case '2':
                cout << "er";
                break;
            case '3':
                cout << "san";
                break;
            case '4':
                cout << "si";
                break;
            case '5':
                cout << "wu";
                break;
            case '6':
                cout << "liu";
                break;
            case '7':
                cout << "qi";
                break;
            case '8':
                cout << "ba";
                break;
            case '9':
                cout << "jiu";
                break;
        }

        if (i != s.length() - 1) {
            cout << " ";
        }
    }

    cout << endl;

    return 0;
}

现在,我们来运行一下这个代码,并输入一个正整数,看看结果:

输入:12345

输出:yi wu ba san wu

这就是这道题的全部内容了,希望对大家有所帮助。

感谢大家观看,我是####,我们下期再见!