#include <stdio.h>
int main()
{
int status=0;
int error;
int num;
do{error=0;
printf("please input a number:");
status = scanf("%d",&num);
if(!status)
{
printf("validate data!/n");
error=1;
}
else if(num<0 || num>15)
{
printf("number not in the range!!/n");
error=1;
}
char skip;
do{
scanf("%c",&skip);
}while(skip!='/n');
}while(error);
printf("congratulations!!!/n");
return 0;
}
程序在处理错误的数据类型能防止出现死循环,主要是因为最后的程序读取所有的字符;
在错误数据类型 和 不在范围内的数据时给出不同的提示;
同时在处理浮点数时,程序将其自动转化为相应的整形数!!