可以把每位数用数组暂存,再反向输出。
#include <iostream>
using namespace std;
int main()
{
const char *str[]={"yi","er","san","si","wu","liu","qi","ba","jiu","ling"};
int arr[0x10];
int n,count=0;
cin>>n;
do
{
arr[count++]=n%10;
n/=10;
}while(n);
for (int i=count-1;i>=0;i--)
arr[i] ? cout<<str[arr[i]-1]<<" " : cout<<"ling ";
return 0;
}