当前位置: 代码迷 >> C语言 >> 为啥这个程序计算不出来呢?(急)
  详细解决方案

为啥这个程序计算不出来呢?(急)

热度:262   发布时间:2007-06-10 20:45:35.0
为什么用%f就错误呢?还有在main前加int说明了什么??
----------------解决方案--------------------------------------------------------
printf("f%",area);

错的
----------------解决方案--------------------------------------------------------


----------------解决方案--------------------------------------------------------

----------------解决方案--------------------------------------------------------


----------------解决方案--------------------------------------------------------

----------------解决方案--------------------------------------------------------
有点耐心啊。
----------------解决方案--------------------------------------------------------
回复:(kinhwang)为啥这个程序计算不出来呢?(急)

看了回复,不少朋友问main前时候可以加int,这个是可以的,意思是main函数要返回一个整形的数值,你这个程序没必要返回的,程序最后的return 0也是没必要的,可以直接用void main()的另外,你的程序有点弊端,因为你r是一个float型(单精度浮点型)的数据,area=r*r*PI这样,area本来是一个double(双精度浮点)型数据,这样无形中会损失精度,如果在大型或者多次计算,误差就会大很多了,以后要注意哦~~
帮你修改一下~~
#include <stdio.h>
#define PI 3.1415926
void main()
{
float r;
double area;
printf("\n please Enter r: ");
scanf("%f",&r);
area=PI*r*r;
printf("\n area is: ");
printf("%f",area);
}


----------------解决方案--------------------------------------------------------
  相关解决方案