亲宝软件园·资讯

展开

PAT-字符串处理-B 1002 写出这个数 (20分)

方知有 人气:4

题目:

思路:

  先用字符串数组存储输入数字,然后依据num[i]-'0'对输入数字求和。然后对求和后的数字,进行分割,存储到数组中,然后遍历数组,依据存储汉语拼音的字符串二维数组进行输出

注意点:

  注意输出末尾不能有空格

代码:

 1 #include<iostream>
 2 #include<stdio.h>
 3 #include<cstring>
 4 using namespace std;
 5 
 6 //存储求和后的数字
 7 int res[110];
 8 //存储输入数字
 9 char num[110];
10 //存储汉语拼音
11 char al[10][5] = { "ling","yi","er","san","si","wu","liu","qi","ba","jiu"};
12 
13 int main()
14 {
15     int sum = 0, count = 0;
16 
17     scanf("%s", num);
18 
19     //获取求和
20     for (int i = 0;i < strlen(num);i++)
21     {
22         sum += num[i] - '0';
23     }
24 
25     //获取求和后的每位数字
26     do
27     {
28         res[count++] = sum % 10;
29         sum /= 10;
30     } while (sum != 0);
31 
32     //依据题意进行输出
33     for (int i = count - 1;i >= 0;i--)
34     {
35         printf("%s", al[res[i]]);
36         if (i != 0)printf(" ");
37     }
38     return 0;
39 }
View Code

 

加载全部内容

相关教程
猜你喜欢
用户评论