感觉这题没啥可说的。。字符数组存储,取余按位拿出,然后输出。。。
#include<bits/stdc++.h>
using namespace std;
char c[10][11] = {"zero","one","two","three","four","five","six","seven","eight","nine"} ;
int main()
{
int out[105];
int sum = 0,num = 0;
char in[105];
scanf("%s",in);
for(int i=0;i<strlen(in);i++)
sum += (in[i]-'0');
while(true)
{
int yu = sum % 10;
out[num++] = yu;
sum /= 10;
if(!sum) break;
}
for(int i=num-1;i>=0;i--)
{
printf("%s",c[out[i]]);
if(i>0) printf(" ");
}
}