读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。
输入格式:
每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 1。
输出格式:
在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。
输入样例:
1234567890987654321123456789
输出样例:
yi san wu
#include<iostream> #include<algorithm> #include<cstdlib> #include<cstdio> #include<queue> #include<stack> #include<cstring> #include<string.h> #include<cmath> using namespace std; const int maxn=1010; int main(){ string s; cin>>s; int b; long sum=0; int length=s.length(); for(int i=0;i<length;i++){ b=s[i]-'0'; sum+=b; } string ss[maxn]; int count=0; while(sum){ int k=sum%10; sum/=10; if(k==0){ ss[count]="ling"; } if(k==1){ ss[count]="yi"; } if(k==2){ ss[count]="er"; } if(k==3){ ss[count]="san"; } if(k==4){ ss[count]="si"; } if(k==5){ ss[count]="wu"; } if(k==6){ ss[count]="liu"; } if(k==7){ ss[count]="qi"; } if(k==8){ ss[count]="ba"; } if(k==9){ ss[count]="jiu"; } count++; } for(int i=count-1;i>=0;i--){ if(i>0){ cout<<ss[i]<<" "; } else{ cout<<ss[i]; } } cout<<endl; return 0; }