C语言编辑过程中的问题

编程中遇到要求圆周长的问题,可是π是变量还是常量,该怎么输入,可不可以用3.14代替π。请简单写一个程序来说明这个问题。

π是常量,定义一次就够了(总不用每次计算前都输入吧)。
可以用宏定义符号常量:
#define PI 3.14159265359
在这一行后编译器编译时遇到PI(引号里面的不算)就用双精度浮点常量3.1415926替换,直到遇到
#undef PI
(如果有的话)。不用宏定义的的话,直接用3.14159265359也不是不可以,例如printf("%lf",r*2*3.14159265359),但如果“3.14159265359”这个数在代码中要多次使用时,每次都这样一个数很麻烦也容易出错,所以推荐用以上的方法。
如果编译器支持C99标准,推荐用
const double PI=3.14159265359;
代替。不过一般情况下简单宏定义不是很容易出错,这样反而麻烦。
简单代码:
#include<stdio.h>
#define PI 3.14159265359
int main()
{
double r;
scanf("%lf",&r);
printf("%lf",2*PI*r);
getchar();
return 0;
}
用反正切函数atan(1)*4也可以得到圆周率,因为tan(π/4)=1。但需要包含数学库math.h才能调用atan函数。

参考资料:原创

温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-08-08
可以定义常量撒
#define PI 3.14
这是最简单的,然后程序中要用这个数据直接用PI就行了
如:
#include<stdio.h>
#include<conio.h>
#define PI 3.14
int main()
{
float a;
printf("\n以下用于计算圆的周长\n");
printf("请输入圆的半径:");
scanf("%f",&a);
printf("\n圆的面积为:%1.2f\n",2.0*a*PI);
getch();
return 0;
}
第2个回答  2009-08-08
可以直接赋值用宏,常量都可以

#define PI 3.14159265
const double pi = 3.14159265;

也可以由函数来计算

double pi = atan(1) * 4;
第3个回答  2009-08-08
too easy

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网