为什么输入任何数,都是这个样子(c语言)

img


我写的程序:
#include<stdio.h>
int main()
{
char ch;

for(;ch=getchar()!='\n';){
    switch(ch){
        case'-':printf("fu");break; 
        case'0':printf(" ling");break;
        case'1':printf(" yi");break;
        case'2':printf(" er");break;
        case'3':printf(" san");break;
        case'4':printf(" si");break;
        case'5':printf(" wu");break;
        case'6':printf(" liu");break;
        case'7':printf(" qi");break;
        case'8':printf(" ba");break;
        case'9':printf(" jiu");break;
        default:break;
                                            
    }
}
return 0;

}

img

int main(int argc, char const *argv[])
{
    char ch;
    for (; (ch = getchar()) != '\n';)
    {
        switch (ch)
        {
        case '-':
            printf("fu");
            break;
        case '0':
            printf(" ling");
            break;
        case '1':
            printf(" yi");
            break;
        case '2':
            printf(" er");
            break;
        case '3':
            printf(" san");
            break;
        case '4':
            printf(" si");
            break;
        case '5':
            printf(" wu");
            break;
        case '6':
            printf(" liu");
            break;
        case '7':
            printf(" qi");
            break;
        case '8':
            printf(" ba");
            break;
        case '9':
            printf(" jiu");
            break;
        default:
            break;
        }
    }
    return 0;
    return 0;
}

你还是老老实实定义一个字符数组然后遍历吧


#include<stdio.h>
int main()
{
char ch;
for(ch=getchar();ch!='\n';ch=getchar()){
    switch(ch){
        case'-':printf("fu");break; 
        case'0':printf(" ling");break;
        case'1':printf(" yi");break;
        case'2':printf(" er");break;
        case'3':printf(" san");break;
        case'4':printf(" si");break;
        case'5':printf(" wu");break;
        case'6':printf(" liu");break;
        case'7':printf(" qi");break;
        case'8':printf(" ba");break;
        case'9':printf(" jiu");break;
        default:break;
                                            
    }
}
return 0;
}
for(;(ch=getchar())!='\n';)