PAT-字符串处理-B 1002 写出这个数 (20分)
题目:
思路:
先用字符串数组存储输入数字,然后依据num[i]-'0'对输入数字求和。然后对求和后的数字,进行分割,存储到数组中,然后遍历数组,依据存储汉语拼音的字符串二维数组进行输出
注意点:
注意输出末尾不能有空格
代码:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
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 }
作者:方知有
Motto: 热爱可抵岁月漫长
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。
所有评论和私信都会在第一时间处理,如有问题或建议,请多多赐教!
支持博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是作者坚持原创和持续写作的最大动力!