可以通过scanf来控制输入格式,当scanf返回值不正确时,即为输入格式错误,这时清除输入缓冲,并提示重新输入。
scanf为C语言格式化输入函数,第一个参数为格式化字符串,可以用来确定输入格式。其返回值为正确输入的变量总数,当格式错误时,输入就会产生错误,返回值自然会不正确。于是通过判断返回值,可以知道是否有格式错误出现。
参考代码如下:
int a,b;
int ret;
//循环输入a,b值。如果格式错误,重新输入。如果得到正确值,终止输入。
while(1)
{
ret = scanf("%d,%d", &a,&b); //必须以逗号分隔。
if(ret != 2)//格式错误。
{
fflush(stdin);//清除输入缓冲,抛弃非法字符。
printf("输入格式错误,请重新输入。\n");//提示重新输入。
}
else
break;//输入正确,退出循环。
}