1002 写出这个数 (20 分)(c/c++)
2021/10/28 17:13:02
本文主要是介绍1002 写出这个数 (20 分)(c/c++),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1002. 写出这个数 (20) [字符串处理] 读⼊⼀个⾃然数n,计算其各位数字之和,⽤汉语拼⾳写出和的每⼀位数字。
输⼊格式:每个测试输⼊包含1个测试⽤例,即给出⾃然数n的值。这⾥保证n⼩于10100。
输出格式:在⼀⾏内输出n的各位数字之和的每⼀位,拼⾳数字间有1 空格,但⼀⾏中最后⼀个拼⾳数字后没有空 格。
输⼊样例: 1234567890987654321123456789
输出样例: yi san wu
思路:⽤string接收输⼊,string的每⼀位数字累加到sum⾥⾯,再将sum转化为string类型的num,对 num的每⼀位输出对应中⽂拼⾳
参考范例:
c++写法
#include<iostream>
using namespace std;
int main() {
string s;
cin >> s;//读入字符串
int sum = 0;
string str[10] = {"ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu"};//创建中文拼音的数组
for (int i = 0; i < s.length(); i++)
sum += (s[i] - '0');//sum是一个整型,而你输入的数字是字符型,所以要把字符型数据转换为整型,求和加到sum中,存入数组中便可以把输入的数的每一位都单独取出来进行求和。
string num = to_string(sum); //将数值转化为字符串。返回对应的字符串,存到num中
for (int i = 0; i < num.length(); i++)
{
if (i != 0) cout << " "; cout << str[num[i] - '0'];//num[i] - '0'把字符型转换为整型,然后在拼音字符串数组中取出对应的拼音,然后进行输出,要注意输出格式.
}
return 0;
}
这篇关于1002 写出这个数 (20 分)(c/c++)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26RocketMQ入门指南:搭建与使用全流程详解
- 2024-11-26RocketMQ入门教程:轻松搭建与使用指南
- 2024-11-26手写RocketMQ:从入门到实践的简单教程
- 2024-11-25【机器学习(二)】分类和回归任务-决策树(Decision Tree,DT)算法-Sentosa_DSML社区版
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享