c语言选择结构 switch语句关于输入错误返回的问题

小弟最紧要完成一个C程序,但是遇见点麻烦,就是在switch选择语句中如果选择1 2 3 4,如果用户输入5的话,提示错误,但是如何让程序自动重新让用户选择,而不是直接显示press any key to contious???
还望高手出手相助,不胜感激
只有7分了,没分了

外面拿个循环条件控制一下,只有输入1-4的时候才能跳出不重新输入。
int n=0;
while(n<1 || n>4)
{
scanf("%d", &n);
switch(n)
{
1.............
2.............
3.............
4.............
default : printf("输入错误,请输入1-4!")
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-06-02
用函数的方法
void fun()
{
int i;
scanf("%d", &i);
switch(i)
{
1.............
break;
2.............
break;
3.............
break;
4.............
break;
default :
printf("错误");
fun();
break;
}
}
第2个回答  2011-06-02
例如输入变量是n,将你的输入语句改为:
n=0;
while(n<1 || n>4)
{ printf("请选择整数(1-4):1.xxxx 2.mmm 3.bbb 4,,Quit : ");
scanf("%d", &n);
}
switch(n)
{…………}
当循环结束时,n的内容一定在1-4范围内。
第3个回答  2011-06-02
用continue 语句试试吧追问

如何实现啊

相似回答