//有一分数序列: 1/2 , 1/4 , 1/6 , 1/8 ......,用递归的方法,求此数列100项之和.
//很容易看出规律 各项 1/(1*2), 1/(2*2), 1/(3*2), 1/(4*2)
#include <stdio.h>
double fun(int i)
{
//如果是第一项直接返回结果
if (i == 1)
return 1.0 / (double)2;
return fun(i - 1) + 1.0 / (double)(2 * i);//递归相加
}
int main()
{
//打印出前100项之和
printf("%lf\n", fun(100));
return 0;
} |
|