永发信息网

编写函数fun,功能为:根据以下公式求π的值(要求精度为0.0005,即小于0.0005则停止)

答案:3  悬赏:40  手机版
解决时间 2021-03-29 09:50
  • 提问者网友:谁的错
  • 2021-03-28 10:58
编写函数fun,功能为:根据以下公式求π的值(要求精度为0.0005,即小于0.0005则停止)
最佳答案
  • 五星知识达人网友:毛毛
  • 2021-03-28 12:01
double fun(double eps){
double k,s;
int n;
s=1+1.0/3;
k=2.0/(3*5);
for(n=3;n!=0;n++) {
s+=k;
k=k*(n)/(2*n+1);
if(k }
return 2*s;
}
===========

scanf("%lf",&x); // %号与lf 之间不要有空白追问谢谢,可以介绍一下形参和实参的是什么吗,区别有哪些追答形参 只用于函数“声明和定义”。函数在声明和定义时,并未实际执行。

函数只有在“调用”时,才实际真正执行。函数调用时用的参数叫实参。

函数体用来描述计算过程,形参在函数体中占个位子,这个位子在函数调用时,由实参来坐。

形参相当于 数学公式里的 变量。例如 A(w,h) = w * h; w,h 是形参。
调用时实参 W1=5, H1=6; a = W1*H1; 实参 W2=7;H2=8; a=W2*H2;

更详细要看教材了。很繁杂。3言两语说不完。
全部回答
  • 1楼网友:独钓一江月
  • 2021-03-28 13:42
中double fun(double eps)
中间有一行是这样的,请问函数里有中文程序能编译通过吗?
  • 2楼网友:雾月
  • 2021-03-28 12:59

#include
#include
#include

double fun(double eps) {
double n = 1,k = 1,t = 1;
double s = 0.0,ds = 1.0;
while(ds >= eps) {
s += ds;
n *= 2 * k + 1;
t *= k;
ds = t/n;
++k;
}
return 2 * s;
}

void main() {
double eps;
printf("INPUT eps:");
scanf("%lf",&eps);
printf("\neps = %lf,PI = %lf\n",eps,fun(eps));
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯