PAT (Basic Level) Practice (中文)1002 写出这个数 (20 分)(Java实现)

其他题目答案(持续更新)

https://blog.csdn.net/qq_39424178/article/details/98243681

题目描述:

读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。

输入格式:

每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 1 0 100 10^{100}

输出格式:

在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。

输入样例:

1234567890987654321123456789

输出样例:

yi san wu

代码示例(Java实现)

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        // 定义一个规则数组
        String[] strs = new String[]{"ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu"};

        Scanner cin = new Scanner(System.in);
        String str = cin.nextLine();
        int sum = 0;
        for (int i = 0; i < str.length(); i++)
            sum += str.charAt(i) - '0';
        
        for (int i = 0; i < (sum + "").length(); i++) {
            // 取出这个字符
            char c = (sum + "").charAt(i);
            if (i == (sum + "").length() - 1)
                System.out.print(strs[c - '0'] + "");
            else
                System.out.print(strs[c - '0'] + " ");
        }

    }

}
发布了80 篇原创文章 · 获赞 13 · 访问量 9256

猜你喜欢

转载自blog.csdn.net/qq_39424178/article/details/98243596