#include <stdio.h>
int main() {
int n;
do {
printf("Enter a Number :");
scanf("%d", &n);
printf("%d \n", n);
if (n % 7 == 0) {
break;
}
} while (1);
printf("Program Ends");
return 0;
}
为什么输入任何字符都要运行无限长的时间?
我想知道为什么它会发生?它应该从循环中中断,因为字符不能被7除尽?
1条答案
按热度按时间w8rqjzmb1#
它不读一个字符。这个叫:
scanf("%d", &n);
不执行任何操作,因为没有要读取的数字。它返回0,让您知道它没有读取数字,但您不进行检查。