PAT乙级1002
1002. 写出这个数 (20)
读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。
输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。
输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。
输入样例:1234567890987654321123456789输出样例:
yi san wu
1 #include<iostream> 2 #include<string> 3 using namespace std; 4 int main() 5 { 6 string str; 7 int i=0,j=0,sum=0; 8 char py[20][10]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"}; 9 int a[50]={0}; 10 cin>>str; 11 int len=str.length(); 12 for(i=0;i<len;i++) 13 { 14 sum+=(str[i]-'0'); 15 } 16 for(i=0;sum!=0;i++) 17 { 18 a[i]=sum%10; 19 sum=sum/10; 20 } 21 for(j=i-1;j>0;j--) 22 { 23 cout<<py[a[j]]<<" "; 24 } 25 cout<<py[a[0]]; 26 }

浙公网安备 33010602011771号