注意:思路简单,主要是注意一下二维数组的初始化方式与一位数组的区别吧,双引号,以及什么条件情况下使用二维数组。
#include <cstdio>
#include <cstring>
char change[10][5]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"}; //二维数组存储
int a[1000];//用来存储各位数字
int main()
{
char str[1000];
int len;
int sum=0,i=0,num=0;
scanf("%s",str);
len=strlen(str);
for(int i=0;i<len;i++)
{
sum=sum+(str[i]-'0');
}
do
{
a[i]=sum%10;
sum=sum/10;
i++;
num++;
}while(sum!=0);
for(int j=num-1;j>=0;j--)
{
if(j==0)
{
printf("%s",change[a[j]]);
}
else
printf("%s ",change[a[j]]);
}
return 0;
}