【注意点】
1.用cin输入字符串,scanf老是有问题
2.对于string s,要输出第n个字符,可以直接用s[n],注意此时类型为char
#include <iostream>
#include <cstdio>
#include <string>
using namespace std;
int main(){
string s;
cin>>s;
int dit = s.size(); //该数字有多少位
// char temp = s[1]; //这里是char类型
// printf("%d", temp-'0');
int num = 0; //存放各位的数字
for(int i=0;i<dit;i++){
int temp = s[i] - '0';
num += temp;
}
string word[10] = {"zero", "one", "two", "three", "four", "five",
"six", "seven", "eight", "nine"};
int sum = num;
int wei = 0; //加起来的和有几位
int all[110] = {0}; //用数组存放各位加起来的和
while(sum!=0){
all[wei] = sum%10;
sum /= 10;
wei++;
}
cout<<word[all[wei-1]];
for(int i=wei-2;i>=0;i--){
cout<<" "<<word[all[i]];
}
return 0;
}