PAT 乙级 1002 1002. 写出这个数

PAT 乙级 1002 写出这个数

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

输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。

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

输入样例:
1234567890987654321123456789

输出样例:
yi san wu

参考代码

import java.util.Scanner;

public class Code1101_1 {
    public static void main(String[] args){
        Scanner input = new Scanner(System.in);
        String str = input.next();
        char[] in = str.toCharArray();
        int sum = 0;
        for(char s: in){
            sum += Integer.parseInt(String.valueOf(s));
        }
        char sum_s[] = (String.valueOf(sum)).toCharArray();
        for(int i=0;iswitch (sum_s[i]){
                case '1':
                    System.out.print("yi");
                    break;
                case '2':
                    System.out.print("er");
                    break;
                case '3':
                    System.out.print("san");
                    break;
                case '4':
                    System.out.print("si");
                    break;
                case '5':
                    System.out.print("wu");
                    break;
                case '6':
                    System.out.print("liu");
                    break;
                case '7':
                    System.out.print("qi");
                    break;
                case '8':
                    System.out.print("ba");
                    break;
                case '9':
                    System.out.print("jiu");
                    break;
                case '0':
                    System.out.print("ling");
                    break;
                default:
                    System.out.print("error");
                    break;
            }
            if(i != sum_s.length-1)
                System.out.print(" ");
        }
    }
}

有什么疑问欢迎大家留言和我讨论!

你可能感兴趣的:(PAT乙级)