#include<stdio.h> void main() { int v,n;//m化升,n是桶数 int h, r; {}; scanf_s("%d %d", &h,&r); v = h * r*r*3.14 / 1000; n = 20 / v; printf("%d", n+1); }
v= 那一行显示算术溢出,请问怎么解决
收起
参考如下:
#include<stdio.h> #include<math.h> int main() { double v; int n; // n是桶数 int h, r; {}; scanf_s("%d %d", &h,&r); v = h * r*r*3.14 / 1000; n = (int)ceil(20 / v); // ceil(x)返回不小于x的最小整数值(然后转换为double型)。 printf("%d", n); return 0; }
报告相同问题?