C++刷题——2830: 递归求1*1+2*2+3*3+……+n*n

Description
定义一个递归函数sum
int sum(int n);    //函数声明,返回12+22+32+……+n2的和
注意:sum为递归函数

Input
正整数n的值

Output
12+22+32+……+n2的和

Sample Input
5
Sample Output
55

/* Copyright (c) 2014, 烟台大学计算机学院
 * All rights reserved.
 * 文件名:test.cpp
 * 作者:陈丹妮
 * 完毕日期:2015年 6 月 1 日
 * 版 本 号:v1.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)
{
    int i,m,w=0;
    for(i=1;i<=n;i++)
    {
        m=i*i;
        w=w+m;
    }
    return w;
}

 

 

心得体会:这是一个简单递归函数,假设遇到复杂的递归函数。在写之前能够先找找规律,写成递归的形式。就比較好些了。继续努力。

posted @ 2018-04-04 20:09  llguanli  阅读(739)  评论(0编辑  收藏  举报