题目:
思路
考虑到数据范围为:10的100次方非常大,所以选择用字符串,数组存储;
创建一个0—9的英文字符数组;
用字符串数组存储我们的位的值的英文;
最后输出。
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main()
{
string s;
int dum=0;
string w[10]={"zero","one","two","three","four","five","six","seven","eight","nine"};
cin>>s;
int n = s.size();
for(int i=0;i<n;i++)
{
dum+=s[i]-48;
}
int ws = 0;
string ans[1000];
for(int i=0;;i++)
{
if(dum == 0) break;
if(dum != 0)
{
ans[i] = w[dum%10];
ws++;
dum/=10;
}
}
for(int i=ws-1;i>=0;i--)
{
cout<<ans[i]<<" ";
}
return 0;
}