题目
1002 写出这个数 (20分)
读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。

输入格式:
每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10
​100
​​ 。

输出格式:
在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。

输入样例:
1234567890987654321123456789
输出样例:
yi san wu

思路:

:我的思路较为繁琐,不建议参考,可参考大神或算法笔记上的,更为简洁

1.输入,10^100次方较大,关键在于如何判断输入多少次。
想法是要么用循环判断,white(cin!=‘/t’)时输入。
或直接用字符串存输入,之后再换为整型。
2. 和的输出,用swtich判断即可。

做题中的错误示范:
3. 想用sum不断模10,除10来输出,发现输出的是逆序。于是又在输出前令sun1=逆序的sum。
结果测试点二答案错误:分析了一下,应该是出现100时,逆序后只有001,我的输出便只有“yi”。
附上错误代码:

#include <bits/stdc++.h>
using namespace std;int main(){char str[101];int sum=0;cin>>str;int len=strlen(str);for(int i=0;i<len;i++){sum+=str[i]-'0';}int sum1=0;while(sum!=0){sum1=sum1*10+sum%10;sum/=10;}int n;while(sum1!=0){n=sum1%10;switch(n){case 0: cout<<"ling";break;case 1: cout<<"yi";break;case 2: cout<<"er";break;case 3: cout<<"san";break;case 4: cout<<"si";break;case 5: cout<<"wu";break;case 6: cout<<"liu";break;case 7: cout<<"qi";break;case 8: cout<<"ba";break;case 9: cout<<"jiu";break;}sum1/=10;if(sum1>0) cout<<' ';}
}

改用整型可变长数组vector来储存sum后,再逆序输出,完成。
AC代码

#include <bits/stdc++.h>
using namespace std;int main(){char str[101];int sum=0;cin>>str;int len=strlen(str);for(int i=0;i<len;i++){sum+=str[i]-'0';}vector <int> a;while(sum!=0){a.push_back(sum%10);sum/=10;}for(int i=a.size()-1;i>=0;i--){switch(a[i]){case 0: cout<<"ling";break;case 1: cout<<"yi";break;case 2: cout<<"er";break;case 3: cout<<"san";break;case 4: cout<<"si";break;case 5: cout<<"wu";break;case 6: cout<<"liu";break;case 7: cout<<"qi";break;case 8: cout<<"ba";break;case 9: cout<<"jiu";break;}if(i!=0) cout<<" ";} }

B 1002 写出这个数(简单字符串处理)相关推荐

  1. textarea限制字符数_PAT乙级-1002 写出这个数

    PAT乙级-1002 写出这个数 本文作者:Shen,JQ 来源 https://pintia.cn/problem-sets/994805260223102976/problems/99480532 ...

  2. C++学习之路 | PTA乙级—— 1002 写出这个数 (20分)(精简)

    1002 写出这个数 (20分) 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这里保证 n 小于 10 ...

  3. 1002 写出这个数 (20 分)

    1002 写出这个数 (20 分) 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这里保证 n 小于 1 ...

  4. 【PAT乙级】1002 写出这个数——柳神代码解析

    1002 写出这个数 (20 分) 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这里保证 n 小于 1 ...

  5. pat真题1002 写出这个数C语言解法和java解法

    pat真题1002 写出这个数C语言解法和java解法 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这 ...

  6. C++:PAT 1002 写出这个数 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。

    1002 写出这个数 C++ 题目 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这里保证 n 小于 1 ...

  7. 1002 写出这个数 (20)(20 分) 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10^10

    https://pintia.cn/problem-sets/994805260223102976/problems/994805324509200384 1002 写出这个数 (20)(20 分) ...

  8. 1002 写出这个数 (20分)

    1002 写出这个数 (20分) 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这里保证 n 小于 10 ...

  9. 1002.写出这个数

    题目截图: 思路: 将输入存储到字符数组中,然后求各位和,然后根据和的每一位输出. 代码: 1 /* 2 1002.写出这个数 3 */ 4 5 #include <stdio.h> 6 ...

  10. 【PAT乙】1002 写出这个数 (20分)

    1002 写出这个数 (20分) 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这里保证 n 小于 10 ...

最新文章

  1. NASM学习之Windows下编写16位程序
  2. C#中的一种按日期分文件夹的日志写法
  3. 精密空调与普通空调区别及故障解析
  4. c++ stl容器vector删除(erase),遍历等基本用法介绍及头文件
  5. php empty ,is_null ,isSet 对比
  6. hdu 5310 Souvenir
  7. 第4章 变量、作用域和内存问题
  8. Laravel核心解读--观察者模式
  9. 支付宝微信,扫码盛行,ATM机朝什么方向发展,会边缘化吗?
  10. Invalid bean definition with name ‘dataSourceCSS‘ dfined in class path resource[xxx]
  11. Codeforces Round #484 (Div. 2) D. Shark
  12. 实现一个简易的线程池。
  13. 淘宝API常用接口列表与申请方式
  14. linux python2.7安装pip_linux安装pip2.7
  15. 在Excel中优化跨页的合并单元格,避免打印后产生空白
  16. IPv6知识概述 - IPv6地址
  17. 正则表达式 re sys os random time 模块
  18. 两两组合工具之itertools
  19. 响应式编程之一:概述
  20. 操作 Windows7 任务栏的快捷方式

热门文章

  1. html表格的斜线怎么弄,word表格斜线怎么弄?
  2. 3行Python 代码实现图片压缩
  3. 车联网大数据框架_车联网大数据平台架构设计-系统总体架构
  4. Redmine使用介绍
  5. matplotlib柱状图之子柱状图不同颜色—20种颜色列表
  6. php 上传图片 裁剪,thinkphp_图片上传裁剪功能
  7. PS修改图片上的文字
  8. Mysql数据库锁与隔离级别
  9. 能否构成三角形的条件代码_中考三角形专题复习:一般三角形知识全面梳理
  10. maya python window_安装了Anaconda之后,Maya运行报错,Python 找不到 Maya 的 Python 模块...