定义一个递归函数int sum_of_square(int n)

计算表达式:1^2+2^2+3^2+....+n^2的值。在主函数中输入n值,通过调用sum_of_square() 输出结果。

第1个回答  2012-05-17
#include <stdio.h>
int sum_of_square(int n)
{
int sum=0;
if(n<=0)
sum=0;
else
sum=n*n+sum_of_square(n-1);
return sum;
}
int main()
{
int n;
printf("n=");
scanf("%d",&n);
printf("%d",sum_of_square(n));
return 0;
}本回答被提问者采纳
第2个回答  2012-05-17
int sum_of_square(int n)
{
if (n<=0) return 0;
else return n*n+sum_of_squre(n-1);
}
第3个回答  2012-05-19
int sum_of_square(int n)
{ int s=0;
for (int i=1;i++;i<=n)
{
s=s+i*i;
}
return s;
}

在c语言中如何使用递归函数
递归,是函数实现的一个很重要的环节,很多程序中都或多或少的使用了递归函数。递归的意思就是函数自己调用自己本身,或者在自己函数调用的下级函数中调用自己。递归之所以能实现,是因为函数的每个执行过程都在栈中有自己的形参和局部变量的拷贝,这些拷贝和函数的其他执行过程毫不相干。这种机制是当代大多数...

C语言,用递归求数列前N项的平方和
sum=sum_(n);printf("The square sum is %d\\n",sum);} \/\/*递归子函数*\/\/\/*递归子函数*\/\/ int sum_(int n){ int a[100];int i;int s=0;if(n==1||n==2)return 0;else if(n==3)return 1;else { a[1]=0;a[2]=0;a[3]=1;for(i=4;i<=n;i++){ a[i]=a[i...

...用递归的方法编写一个函数sum(int n),求1~
include "stdio.h"int sum(int n){if(n>1)return n+sum(n-1);elsereturn 1;}int main(){int n;scanf("%d",&n);printf("%d\\n",sum(n));}

c++的问题 用递归算法实现函数:int sum( int n )
include<iostream>using namespace std;int sum(int n){if ( n== 1 ) \/\/这是递归结束条件return 1;elsereturn n+sum(n-1); \/\/递归的意思就是:先假设sum(n-1)函数能实现1到n-1的求和,sum(n)=n+sum(n-1) ;这是求和递推公式}int main(){int n; \/\/少了变量定义cin>>n;cout<...

C语言:只定义一个递归函数,求Fibonacci数列前35项的和;主函数中只用一...
代码文本:include "stdio.h"int Sum_Fib(int n,int a=1,int b=1){ return n>1 ? b+Sum_Fib(n-1,b,a+b) : 1;} int main(int argc,char *argv[]){ printf("SUMF(35) = %d\\n",Sum_Fib(35));return 0;}

用c语言编写一个递归函数“int FF(int a【】,int n)”,求出数组a中所...
int abc(int a[],int n){ if(n==0)return a[0];else return a[n-1]*abc(a[],n-2);} 或:int ff(int a[],int n){ int sum=0;int i for(i=0;i<n;i++){ sum+=a[i];} return sum;}

c语言 求x的k次方的和,(x从1到n)
int p = k - 1;if (k == 0) { return 1;} while (p > 0) { q = q * n;p--;} return q;} \/\/ 这个函数用迭代法求x的k次方的和,(x从1到n)int sum_of_powers(int n, int k) { int sum = 0;for (int x = 1; x <= n; x++) { sum += power_iteration(x...

定义递归函数sum(n)计算1+2+...+n, 其中n的类型是int,函数类型是double...
从大往小加,递归出口是1 加到1就停,加不到1,就做n+函数(n-1)分析到这里,就先做递归出口判断,n==1 是,返回1;不是,返回n+sum(n-1);double sum(int n){ if(n==1){ return 1;} else { return n+sum(n-1);} }

int S(int n)什么意思啊?
S是一个递归函数。你输入为n的话,S最后返回的结果就是1+2+……+n的值。对于S函数,这样分析。1 如果n为1,则直接返回1.2 如果n不为1,则返回n+S(n-1)然后,继续往下看,S(n)=n+S(n-1),S(n-1)=n-1+S(n-2),一直推下去,就有:S(n)=n+n-1+n-2+……+4+3+2+1 ...

...int factorial(int n) { if(n = = 0) return 1; return ___ ;_百...
B. n*factorial(n-1)

相似回答