二级C语言累加或累乘问题 急!

来源:百度知道 编辑:UC知道 时间:2024/06/17 04:09:33
请各位高手告诉我二级C语言累加或累乘的程序怎么设计?帮帮忙吧!

如:请编写fun函数,其功能是:计算并输出:
F=1+(1+√2)+(1+√2+√3)+...+(1+√2+√3+...+√m)

又如:请编写fun函数,其功能是:根据以下公式求π的值:
π/2=1+1/3+(1/3)*(2/5)*(3/7)+(1/3)*(2/5)*(3/7)*(4/9)+...

请问像这类题怎么做?希望高人指点!
只需要写出被调函数中的上述的关键语句就行了,其它都不用写出来。
麻烦了!

第一个
#include<stdio.h>
void main()
{
int s=0,i=1,sum=0,n;
scanf("%d",&n) ;
for(i=1;i<=n;i++)
{
s+=i;
sum+=s;
}
printf("%d",sum);
getch();
}

第一题那是根号2、根号m还是啥,怎么边上一个勾。。
这种题可以用递归来做
比如第一题:
double fun(int n){
if(n==1) return 1;
else{
return sqrt(n) + fun(n-1); //sqrt()是求平方根,要#include <math.h>
}
}

第一个:
float f(int n)
{
int i;
float sum=0;
for(i=1;i<+=n;i++)
sum=sum+sqrt(i);
//sqrt()是求平方根
//要加#include
}
//这个也可以用递归来实现上个函数的功能。参考楼上写的。
float fun(int m)
{
int i;
float sum=0;
for(i=1;i<=m;i++)
sum=sum+f(i);
}
说一下我的思路,先用一个函数求出每一项的值,再写一个函数求出所有的项的和就行了,第二个函数会调用前一个函数的值。
第二个题目就复杂一点了。
float f(int i)
{ int n;float result=1;
for(n=1;n<i;n++)