输入验证处理:为什么输入33a时就不报错呢?
#include <stdio.h>#include <stdlib.h>
int getint(int min,int max)
{ int n;
printf("请输入[%d~%d]间的一个整数:\n",min,max);
while((scanf("%d",&n)!=1)||(n<min)||(n>max))
{ printf("请输入[%d~%d]间的一个整数:\n",min,max);
fflush(stdin);
}
return n;
}
int main(int argc, char *argv[])
{int m;
printf("请输入一个介于3~100之间的一个整数:\n");
m=getint(3,100);
printf("你输入的整数为:%d\n",m);
system("PAUSE");
return 0;
}
[ 本帖最后由 chenzhibin07 于 2013-5-1 09:23 编辑 ]