1002.写出这个数

 题目截图:

 

思路:

  将输入存储到字符数组中,然后求各位和,然后根据和的每一位输出。

 

代码:

 1 /*
 2     1002.写出这个数
 3 */
 4 
 5 #include <stdio.h>
 6 #include <string.h>
 7 #include <math.h>
 8 #include <stdlib.h>
 9 #include <time.h>
10 
11 // num[i] 表示 i 的拼音 
12 char num[][10] = {"ling", "yi", "er", "san", "si", "wu", 
13                 "liu", "qi", "ba", "jiu"};
14 
15 int main() {
16     char str[102];
17     scanf("%s", str);
18     int i, len=strlen(str), sum=0;
19     for(i=0; i<len; ++i) {            // 计算各位和 
20         sum += str[i]-'0';     
21     }
22     char s[5];
23     int n=0;
24     while(sum) {                    // 分离和的每一位 
25         s[n++] = sum%10;
26         sum /= 10;
27     }
28     for(i=n-1; i>=0; --i) {            // 从高位开始输出 
29         printf("%s", num[s[i]]);
30         if(i != 0) {
31             printf(" ");
32         }
33     }
34 
35     return 0;
36 }

 

posted @ 2018-02-24 22:39  Just_for_Myself  阅读(394)  评论(0编辑  收藏  举报