【PAT乙级】1002 写出这个数 (20分)
1002 写出这个数 (20分)
读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。
输入格式:
每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10^100^。
输出格式:
在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。
输入样例:
1 | 1234567890987654321123456789 |
输出样例:
1 | yi san wu |
思路:
首先看到输入的n是小于10^100^, 无论是int还是long long都存放不下这么大的整数,所以只能用字符串类型一个一个地读取,再利用 减去字符串0 的操作来得到当前输入的数字,用于累加每一位数字求和。关于求和之后如何读出这个数,这里我利用到了 vector容器 , 从数字的低位开始逐步push进入vector容器,然后再利用一个自定义的拼音数组,进行反向读取即可。
代码如下:
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 pc的博客!