C语言用递归求函数的第n项f(n) = 1×2 + 2×3 + 3×4 + …… + n×(n+1)

已知:f(n)=1×2+2×3+3×4+……+n×(n+1)编写递归函数,输入n值,求f(n)。函数原型:intsumn(intn,int*flag)参数n:输入;参数f... 已知:
f(n) = 1×2 + 2×3 + 3×4 + …… + n×(n+1)
编写递归函数,输入n
值,求f(n)。
函数原型:
int
sumn( int n, int *flag )
参数
n: 输入;参数 flag:测试编写是函数是否为递归。在自己编写的sumn函数中,写入以下语句:

*flag )++;

测试用例1: 测试输入 3 期待的输出 20

测试用例 2: 测试输入 0 期待的输出 Bad Input.
展开
 我来答
eiilpux17
2013-11-30 · TA获得超过802个赞
知道小有建树答主
回答量:424
采纳率:0%
帮助的人:402万
展开全部
#include <stdio.h>
int sumn(int n,int *flag)
{
 (*flag)++;
 if(n==1)
  return n*(n+1);
 else
  return n*(n+1)+sumn(n-1,flag);
}
int main()
{
 int count=0,result;
 int n=0;
 scanf("%d",&n);
 if(n>0)
 {
  result=sumn(n,&count);
  printf("%d\n",result);
 }
 else
 {
  printf("Bad Input.\n");
 }
 return 0;
}

count作为一个递归的测试值,传入调用函数,最终输出的值和n是一样的

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式