//;利用函数求s=1/2^2+3/4^2+5/6^2+……+(2n-1)/(2n)^2,直到最后一项的值<=10^-4,并把计算结果作为函数返回值。
#include <stdio.h>
#include <math.h>
double p();
int main()
{
	double a;
	a=p();
	printf("result=%lf",a);
	return 0;
}
double p()
{
	int n;
	double t,s=0;
	for(n=1;(int)fabs(t)*10000<=1;n++)
	{
		t=(2*n-1)/((2*n)*(2*n));
		s=s+t;
	}
	return s;
}运行结果显示的是0.000000,是哪里有问题?
                    
                    
                3 回答
                        已采纳
                    
                                        
                        
                            JustWannaHugU
                            
                                
                            
                        
                        
                                                
                    TA贡献452条经验 获得超796个赞
#include <stdio.h>
#include <math.h>
double p();
int main()
{
    double a;
    a=p();
    printf("result=%lf",a);
    return 0;
}
double p()
{
    
    double t,s=0;
    for(double n=1;(int)(fabs(t)*10000)<=1;n++)
    {
        t=(2*n-1)/((2*n)*(2*n));
        s=s+t;
    }
    return s;
}- 3 回答
 - 0 关注
 - 1577 浏览
 
添加回答
举报
0/150
	提交
		取消
	