问题描述:
解题思路:
1.计算n的和,由于保证n小于,所以和是一个三位数
2.取和的个、十、百位,返回对应的汉字拼音
3.对空格的要求,可用‘ ’,相当于:‘ ’.join()操作
解题代码:
#include <iostream>
#include <string>
using namespace std;
int main() {
string s;
cin >> s;
int sum = 0;
int s1,s2,s3; //和的位数 s1百位,s2十位,s3个位
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');
// cout << sum;
s1 =sum/100;s2=(sum/10)%10;s3 =sum%10;
if(s1==0&&s2==0){
cout <<str[s3];
}else if(s1==0&&s2!=0){
cout <<str[s2];cout<<' ';cout<<str[s3];
}else{
cout <<str[s1];cout<<' ';cout<<str[s2];cout<<' ';cout<<str[s3];
}
return 0;
}
--------------------------------------------------知识点仅针对个人盲点-------------------------------------------------
知识点:
cin是接收输入
cout是输出
cout语句的一般格式为:cout<<表达式1<<表达式2<<……<<表达式n;
cin语句的一般格式为:cin>>变量1>>变量2>>……>>变量n;
cout<<"XXX"<<endl;