我有这个代码,一个从用户那里获取一个负整数的程序,如果不将它们困在一个循环中,直到他们输入一个负整数。我有这部分,但是,我怎么能清除输入缓冲区?
我尝试使用 while ((getchar()) != '\n'); 在第一次 scanf_s 之后,但它失败了。
这是代码
#include <stdio.h>
int main()
{
int num;
printf("Please enter a negative integer");
scanf_s("%d", &num);
while (num >= 0.0)
{
printf("Please enter a negative integer!\n");
scanf_s("%d", &num);
}
printf("%d", num);
system("pause.exe");
return 0;
}