int flag = 0;
int price = 0;
while (flag==0)
{
printf("\nEnter Product price: ");
scanf("%d",&price);
if (price==0)
printf("input not valid\n");
else
flag=1;
}
当我输入一个有效的数字时,循环按预期结束。但是如果我输入了不是数字的东西,比如hello
,那么代码就会进入无限循环。它只会不停地打印输入产品价格:
和输入无效
。但它不等我输入新的数字。为什么会这样?