首页 > 代码库 > 05-2. 念数字(15)

05-2. 念数字(15)

输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出“fu”字。十个数字对应的拼音如下:

0: ling1: yi2: er3: san4: si5: wu6: liu7: qi8: ba9: jiu

 

输入格式:

输入在一行中给出一个整数,如: 1234 。

提示:整数包括负数、零和正数。

输出格式:

在一行中输出这个整数对应的拼音,每个数字的拼音之间用空格分开,行末没有最后的空格。如 yi er san si

输入样例:

-600

输出样例:

fu liu ling ling


 1 #include <stdio.h> 2  3 int main() 4 { 5     int n; 6     scanf("%d", &n); 7  8     if(n < 0) { 9         printf("fu ");10         n = -n;11     }12     int t = n,mask = 1;13     while(t > 9) {14         t /= 10;15         mask *= 10;16     }17     char *s[] = {"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};18     int d;19     20     while(mask > 0) {21         d = n / mask;22         printf("%s", s[d]);23         if(mask > 9) {24             printf(" ");25         }26         n %= mask;27         mask /= 10;28     }29 30     return 0;31 }