关于Switch输入字母后死循环怎么解决?求指导
本人小白,看书后写了一个简单的switch程序,但是在运行的时候不小心输入了字母,然后就死循环了,请各位大大帮忙看看要怎么改才不会那样;先谢谢了!新人没有多少分,请见谅!
#include<stdio.h>
int main(void)
{
int i;
char ch;
while(i!=4)
{
printf("输入:");
scanf("%d",&i);
while (ch=getchar()!='\n')//只解决了1we格式输入的问题,但是连续输入字母时显示的结果还是之前的。
continue;
switch (i)
{
case 1: printf("1111\n");
break;
case 2: printf("2222\n");
break;
case 3: printf("3333\n");
break;
case 4: break;
default : printf("错误!\n");
break;
}
}
return 0;
}