用while?
----------------解决方案--------------------------------------------------------
for 循环怎么可以结束捏?
用while?
用while?具体地说
----------------解决方案--------------------------------------------------------
0到6,为什么只有case 4个呢?
何必?还是没完成其他选项?
----------------解决方案--------------------------------------------------------
case 3 : exit_110(); break;
----------------解决方案--------------------------------------------------------
请问exit的具体作用是什么?
可以在switch语句外面再加一个break啊
----------------解决方案--------------------------------------------------------
有这么一段函数(部分):
main()
{for(;;)
{ switch(menu_book())
{
case 1 : add(); break;
case 2 : search() ; break;
case 3 : exit_110(); break;
case 4 : list () ; break;
}
}
}
int menu_book()
{ int c;
printf("*******************MENU******************\n");
printf("* 1.tian_jia *\n");
printf("*****************************************\n");
do
{printf("\n\n enter you choice(0-6):");
scanf("%d",&c); }
while(c<0||c>6);
return c}
为何当输入的值为一个非数字字符(如:a,或A)的时候会出现无限循环??
就是老是输出“enter you choise(0-6):”有啥解决方案?
各位朋友帮忙呀!先谢了
楼主说的
"为何当输入的值为一个非数字字符(如:a,或A)的时候会出现无限循环??
就是老是输出“enter you choise(0-6):”有啥解决方案"
这个是因为A或a的ASCII值都是>6的...又因为整型和字符型可以通用...所以这里你虽然定义C为int型...但输入字符也是合法的...所发输入A或a就满足你的while条件....自然会继续do后面的语句了....还有就是你的for循环是死循环.....
----------------解决方案--------------------------------------------------------
有这么一段函数(部分):
main()
{for(;;)
{ switch(menu_book())
{
case 1 : add(); break;
case 2 : search() ; break;
case 3 : exit_110(); break;
case 4 : list () ; break;
}
}
}
int menu_book()
{ int c;
printf("*******************MENU******************\n");
printf("* 1.tian_jia *\n");
printf("*****************************************\n");
do
{printf("\n\n enter you choice(0-6):");
scanf("%d",&c); }
while(c<0||c>6);
return c}
为何当输入的值为一个非数字字符(如:a,或A)的时候会出现无限循环??
就是老是输出“enter you choise(0-6):”有啥解决方案?
各位朋友帮忙呀!先谢了
请弄清楚了,楼主说的是在输入a,或A的时候会出现无限循环。
按照常理输入了一个数,不再0到6的范围内的话(比如说a)就会出现enter you choise (0-6) ;
然后就应该继续让你输入一个数,而楼主的确是出现了无限循环,而没有让你输入一个数。
楼主问的应该是这个现象,本人也想听听高手的解释。谢谢
----------------解决方案--------------------------------------------------------