如何对if判断进行分类
时间:2010-10-06 来源:wbwk2005
#include <stdio.h>
#include <conio.h>
int main()
{
int choice;
char c;
printf("\t\t\t***排序控制模块***\n\n");
printf("\t\t\t1.插入排序\n\n");
printf("\t\t\t2.shell排序\n\n");
printf("\t\t\t3.选择排序\n\n");
printf("\t\t\t4.冒泡排序\n\n");
printf("\t\t\t5.快速排序\n\n");
printf("\t\t\t0.退出\n\n");
printf("\t\t\t\n请输入您的选择(0~5):");
//c=getchar();
while(1)
{
char d;
c=getchar();
while(1)
{
c=getchar();
if(c!=' '&&c!='\n')
break;
else
continue;
}
choice=c-48;
if((d=getchar())=='\n')
{
if (choice>=0&&choice<=5)
return (choice);
else
{
printf("重新输入您的选择(0~5):");
continue;
}
}
else
{
printf("重新输入您的选择(0~5):");
fflush(stdin);
// while((d=getchar())!='\n')
// continue;
}
}
}
这是一段小程序,实现了数字选择的功能,在正确处理错误这一块通过这段程序还是学到了挺多了,也多亏师傅大人的指点。
一点编程思想,先要分析可能的输入有什么,那些是对的,那些是错的,然后分类判断;
可能的输入可以分为两大类:(1)输入一个字符
(2)输入多个字符
只要出现第二种情况就是错的,需要重新输入;若出现第一种情况,如果位于0~5范围内就是正确的,若不是就是错的;所以if判断就按照上面的分析来就正确了,但首先要找到判断输入一个字符的条件就是getchar()==‘\n’,
输入多个字符需要注意要将这些字符清空以后在进行输入。
相关阅读 更多 +