编辑:问题已经解决,我现在尽量让它尽可能清楚。
当我制作一个程序来计算圆的面积时,我将“3.1415926535”分配给一个常数浮点Pi。当我在我的程序中使用它作为areaCircle = Pi * radius * radius,其中radius是一个整数而areaCircle是一个浮点数,程序打印出类似“7.000000”的东西。我原以为它会返回一个小数,例如“7.123456”或其他东西
编辑:这是代码,如果你们需要它:
int radius
float circumference,areaCircle;
const int PI = 3.14159265358979323846264338327;
printf("Enter the radius of the circle: \n");
scanf("%d",&radius);
circumference = PI*2*radius;
areaCircle = PI*radius*radius;
printf("The circumference of a circle with radius %d is %f and its area is %f\n",radius,circumference,areaCircle);
答案 0 :(得分:0)
在您发布的代码中,您已将PI
声明为int
。尝试:
const float PI = 3.14159265358979323846264338327;
答案 1 :(得分:0)
如果你更清楚地提出问题,那将是非常好的。
虽然我有一些建议......
您的程序显示areaCircle Value as floating data
,因为,areaCircle是浮点数。它也在计算浮点数。
Logically
-Radius can't be Integer
类型。
您可以设置all data types as float / double
。
并且还可以将此用于语句中
控制小数点后的数字%.2f
或%.0f
或您需要的任何值。