我在下面的简单编码练习中的代码会产生“被零除”的警告,我想知道为什么。
#include <stdio.h>
int main() {
for(int i = 0; i < 100; i++) {
printf("celsius=%d fahrenheit=%d\n", i, (i/(5/9))+32);
}
return 1;
}
temps.c: In function ‘main’:
temps.c:6:45: warning: division by zero [-Wdiv-by-zero]
printf("celsius=%d fahrenheit=%d\n", i, (i/(5/9))+32);
答案 0 :(得分:1)
我在写这个问题时意识到这是因为我应该写5.0/9.0
,因为C处理的a way中的整数除法是我没想到的。无论如何都将其发布,因为我找不到与SO上的特定问题相关的特定错误。