递归求1*1+2*2+3*3+……+n*n
时间: 1ms 内存:128M
描述:
定义一个递归函数sum,函数声明如下:int sum(int n); //函数声明,返回12+22+32+……+n2的和在下面代码的基础上完成,提交时只提交sum的函数定义。#include <iostream>#include <cmath>using namespace std;int sum(int n); //函数声明,求12+22+32+……+n2的和int main(){int n,s;cin>>n;s= sum(n) ; //函数调用cout<<s<<endl;return 0;}注意:sum为递归函数
输入:
正整数n的值
输出:
12+22+32+……+n2的和
示例输入:
5
示例输出:
55
提示:
参考答案(内存最优[552]):
program p1000(Input,Output); 
var 
	a,b,i:integer;
begin 
	read(a);
	for i:=1 to a do
		b :=b+ i*i;
	writeln(b);
end.
参考答案(时间最优[0]):
#include <iostream>
#include <cmath>
using namespace std;
 
int sum(int n); //函数声明,求12+22+32+……+n2的和
 
int main()
{
   int n,s;
   cin>>n;
   s= sum(n) ;  //函数调用
   cout<<s<<endl;
   return 0;
}
int sum(int n) //函数d定义,求12+22+32+……+n2的和
{
  if(n==1)
	  return 1;
  if(n>1)
	  return  sum(n-1)+n*n;
}
题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。
