用C语言如何编写1-1/2+1/3-1/4+…+(-1)(n+1次方)/n

如题所述

给你个用递归方法的,这种题目一般是用递归算法做的
#include <stdio.h>
#include <math.h>
long double fun(int n);
main()
{
int n;
printf("请输入n的值:\n");
scanf("%d",&n);
printf("表达式的值为:%lf\n",fun(n));
}
long double fun(int n)
{
long double result;
if(n == 1)
{
return 1;
}
else
{
result = (long double)pow(-1,n+1)/n;
return result+fun(n-1);
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-01
思路:奇数项是加,偶数项是减。
int funtion(int n){
int i;
float sum=0.0;
for(i=1;i<=n;i++)
if(i%2==1)
sum+=1/i;
else
sum-=1/i;
return sum;
}
第2个回答  2013-09-01
上面的返回值搞错了, 改成float就行了, 我晕, QQ搞什么鸟, 不能对自己的答案进行编辑的。靠
相似回答