1 #include<iostream>
2 #include<cstring>
3 #include<stdio.h>
4 #include<vector>
5 #include<queue>
6 #include<stack>
7 using namespace std;
8 string alpha[
10] = {
"zero",
"one",
"two",
"three",
"four",
"five",
"six" ,
"seven",
"eight",
"nine"};
9 stack<
string>
ans;
10 void add(
string num) {
11 int res =
0;
12 for(
int i =
0; i < num.length(); i++
) {
13 res += (num[i] -
'0');
14 }
15 if(res ==
0) {
//一个临界条件,因为数据可能包含0的情况,但是下面的while循环如果是0就直接跳出了
16 cout <<
"zero";
17 return;
18 }
19 while(res) {
20 ans.push(alpha[res%
10]);
21 res /=
10;
22 }
23 while(!
ans.empty()) {
24 cout <<
ans.top();
25 ans.pop();
26 if(ans.size() !=
0) cout <<
" ";
//要写在pop之后
27 }
28 }
29 int main () {
30 string str;
31 cin >>
str;
32 add(str);
33 }
转载于:https://www.cnblogs.com/dcklm/p/10339588.html
转载请注明原文地址: https://win8.8miu.com/read-23751.html