读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。
输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。
输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1空格,但一行中最后一个拼音数字后没有空格。
输入样例:
1234567890987654321123456789
输出样例:
yi san wu
ps:简单题一道,可以说的只有拼音和数字对应关系时所用到的方法,看起来虽然不是很高端,但却是经常会用到的小技巧。
#include<stdio.h>
#define N 1000
char inStr[N]; int outStr[N];
int main() { char stdStr[10][5]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"}; scanf("%s",inStr); int i,sum=0; for(i=0;inStr[i]!='\0';i++) sum+=inStr[i]-'0'; i=0; while( sum ) { outStr[i++]=sum%10; sum/=10; } for(int j=i-1;j>=0;j--) printf("%s%c",stdStr[outStr[j]],j?' ':'\n');
return 0; }