pat 1002 写出这个数 (20)

(20 分)

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

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

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

输入样例:

1234567890987654321123456789

输出样例:

yi san wu
作者: CHEN, Yue
单位: PAT联盟
时间限制: 400ms
内存限制: 64MB
代码长度限制: 16KB

#include <iostream> #include <string> using namespace std; string tostring(int n) { switch(n) { case 0:return "ling"; case 1:return "yi"; case 2:return "er"; case 3:return "san"; case 4:return "si"; case 5:return "wu"; case 6:return "liu"; case 7:return "qi"; case 8:return "ba"; case 9:return "jiu"; } } int main() { string input; cin>>input; int len=input.size(); int i,sum=0; for(i=0;i<len;i++) { sum+=input[i]-'0'; } int *num=new int[100]; int count=0; while(sum>0) { num[count++]=sum%10; sum=sum/10; } string str=""; for(i=count-1;i>=1;i--) { str+=tostring(num[i]); str+=" "; } str+=tostring(num[0]); cout<<str; return 0;
}
 

猜你喜欢

转载自www.cnblogs.com/houchen/p/9278959.html
今日推荐