一个递归函数就可以了。
下面是代码:参数sum传递前必须初始化0。
代码实现原理:通过递归从第n项开始往前累加。
#include<stdio.h>
#include<math.h>
float sumN(int n,float *sum);
int main()
{
int n;
float sum=0;//sum必须初始化0
printf("输入N的值:");
scanf("%d",&n);
printf("计算结果:%f\n",sumN(n,&sum));
return 0;
}
float sumN(int n,float *sum)
{
if(n>0)
{
*sum+=pow(-1,(n-1))*(1.0/n);
return sumN(--n,sum);
}
return *sum;
}