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;
}

心得体会:这是一个简单递归函数,如果遇到复杂的递归函数,在写之前可以先找找规律,写成递归的形式,就比较好些了。继续努力!

时间: 2024-10-14 14:02:02

C++刷题——2830: 递归求1*1+2*2+3*3+……+n*n的相关文章

OJ刷题之《求n阶勒让德多项式》

题目描述 用递归方法求n阶勒让德多项式的值,递归公式为 n=0     pn(x) =1 n=1     pn(x) =x n>1     pn(x) =((2n-1)*x* pn-1(x) -(n-1)* pn-2(x))/n 结果保留2位小数. 输入 n和x的值. 输出 pn(x)的值. 样例输入 2 2 样例输出 5.50 提示 主函数已给定如下,提交时不需要包含下述主函数 /* C代码 */ int main() { int x,n; scanf("%d%d",&

OJ刷题之《求sinh(x)》

题目描述 写一函数求sinh(x)的值,求sinh(x)的近似公式为 sinh(x) = (ex-e-x)/2 ,其中用一个函数求ex .结果保留两位小数. 输入 x 输出 sinh(x)的值. 样例输入 1 样例输出 1.18 提示 主函数已给定如下,提交时不需要包含下述主函数 /* C代码 */ int main(){ double x; scanf("%lf",&x); printf("%.2f\n",udf_sinh(x)); return 0; }

C++刷题——2713: 函数---求x的y次方

编写函数POW,函数声明如下: int POW(int x,int y); //求x的y次方的函数声明 在以下程序的基础上,添加POW函数的定义,使程序能够正确执行. /* All rights reserved. * 文件名称:test.cpp * 作者:陈丹妮 * 完成日期:2015年 5 月 22 日 * 版 本 号:v1.0 */ #include <iostream> using namespace std; int POW(int x,int y); //求x的y次方的函数声明 i

OJ刷题之《求a的b次方》

题目描述 编写函数POW,函数声明如下: int POW(int x,int y); //求x的y次方的函数声明 在以下程序的基础上,添加POW函数的定义,使程序能够正确执行. 提交时,只需要提交POW函数的定义代码即可. #include <iostream> using namespace std; int POW(int x,int y); //求x的y次方的函数声明 int main() { int a,b; cin>>a>>b; cout<<a&l

OJ刷题之《求方程的根》

题目描述 求方程 的根,用三个函数分别求当b^2-4ac大于0.等于0.和小于0时的根,并输出结果.从主函数输入a.b.c的值. 输入 a b c 输出 x1=? x2=? 样例输入 4 1 1 样例输出 x1=-0.125+0.484i x2=-0.125-0.484i 提示 主函数已给定如下,提交时不需要包含下述主函数 /*  C代码或C++代码   */ int main() { float a,b,c,q; void shigen(float,float,float); void den

OJ期末刷题 问题 B: 求三角形面积-gyy

题目描述 输入三条边的长度,如果这三条边能构成三角形,则需要计算三角形面积,如果不能构成三角形则输出提示信息 "error input".输出的面积按两位小数方式输出 输入 三条边的长度 输出 如果这三条边能构成三角形,则输出该三角形面积,如果这三条边不能构成三角形,则输出提示信息"error  input" 样例输入 3.3 4.4 5.5 样例输出 area=7.26 提示 输出面积时保留两位小数 代码: #include <iostream> #i

第十六周oj刷题——Problem C: B 求类中数据成员的最大值-类模板

Description 声明一个类模板,类模板中有三个相同类型的数据成员,有一函数来获取这三个数据成员的最大值. Input 分别输入3个整数,3个浮点数,3个字符 Output 3个整数的最大值 3个浮点数中的最大值 3个字符中的最大值 Sample Input 9 5 6 1.1 3.4 0.9 a b c Sample Output 9 3.40 c /* All rights reserved. * 文件名称:test.cpp * 作者:陈丹妮 * 完成日期:2015年 6 月 25 日

第十五周oj刷题——Problem E: C++习题 对象数组求最大值

Description 建立一个对象数组,内放n(<10)个学生的数据(学号.成绩),设立一个函数max,用指向对象的指针作函数参数,在max函数中找出n个学生中成绩最高者,并输出其学号. Input n和n个学生的学号.成绩 Output 成绩最高者的学号和成绩 Sample Input 5 101 78.5 102 85.5 103 98.5 104 100.0 105 95.5 Sample Output 104 100.00 /* All rights reserved. * 文件名称:

刷题之路(八)求字符串中的符合要求的数字

简介:String to Integer (atoi)—实现将字符串转换为整数的atoi 问题详解:给定一个字符串str,在该函数中首先丢弃所需数量的空白字符,直到找到第一个非空白字符’ ',然后,从该字符开始,采用可选的初始加号或减号,后跟尽可能多的数字,并将它们转换为数值. 其他非数字字符串可以包含在形成整数之后的其他字符,这些字符将被忽略,如果str中的第一个非空白字符序列不是有效的整数,或者由于str是空的或者只包含空格字符而不存在这样的序列,则返回零值 超出-2^31 ~ 2^31-1