#include<stdio.h>
#include<string.h>
int main()
{
char c[100];
int l;
int i;
gets(c);
l=strlen(c);
for(i=0;i<l-1;i++)
{
if(c[i]=='-')
{
printf("fu ");
}
if(c[i]==0)
{
printf("ling ");
}
if(c[i]==1)
{
printf("yi ");
}
if(c[i]==2)
{
printf("er ");
}
if(c[i]==3)
{
printf("san ");
}
if(c[i]==4)
{
printf("si ");
}
if(c[i]==5)
{
printf("wu ");
}
if(c[i]==6)
{
printf("liu ");
}
if(c[i]==7)
{
printf("qi ");
}
if(c[i]==8)
{
printf("ba ");
}
if(c[i]==9)
{
printf("jiu ");
}
}
if(i==l-1)
{
if(c[i]==0)
{
printf("ling");
}
if(c[i]==1)
{
printf("yi");
}
if(c[i]==2)
{
printf("er");
}
if(c[i]==3)
{
printf("san");
}
if(c[i]==4)
{
printf("si");
}
if(c[i]==5)
{
printf("wu");
}
if(c[i]==6)
{
printf("liu");
}
if(c[i]==7)
{
printf("qi");
}
if(c[i]==8)
{
printf("ba");
}
if(c[i]==9)
{
printf("jiu");
}
}
return 0;
}
#include <stdio.h>
int main()
{
const char *a[] = {"ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu"};
char b[100];
scanf("%s", b);
const char *p = b;
if (*p == '-')
{
printf("fu");
p++;
}
while (*p)
{
if (p > b)
printf(" ");
printf("%s", a[*p - '0']);
p++;
}
return 0;
}
gets这些都是对字符串的操作,而你是c[100]是数组,肯定不行
把get函数换成for+scanf的组合就可以了