读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。
输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10^100。
输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。
输入样例:
1234567890987654321123456789
输出样例:
yi san wu
import java.util.Scanner;
public class PatTest1002 {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
String s;
int sum=0;
s=in.next();
char[] arg=s.toCharArray();//字符串转化为字符数组
for (int i = 0; i < arg.length; i++) {
sum+=arg[i]-48;
}
int y=1;
int num=sum;
while(num/10!=0){
num=num/10;
y++;
}
int x=y-1;
String[] str=new String[y];
do{
switch(sum%10){
case 1:str[x]=("yi");break;
case 2:str[x]=("er");break;
case 3:str[x]=("san");break;
case 4:str[x]=("si");break;
case 5:str[x]=("wu");break;
case 6:str[x]=("liu");break;
case 7:str[x]=("qi");break;
case 8:str[x]=("ba");break;
case 9:str[x]=("jiu");break;
case 0:str[x]=("ling");break;
}
x--;
sum=sum/10;
}while(sum%10!=0);
for (int i = 0; i < str.length; i++) {
if (i<=str.length-1) {
System.out.print(" "+str[i]);
}else{
System.out.print(str[i]);
}
}
}
}
测试的截图