C语言 用递推法求1+2+3+4+............... 用递归法求1+2+3+4+.........

求编码 急急
2024-12-26 04:28:43
推荐回答(3个)
回答1:

#include "stdio.h"
int fun(int n)
{
  if(n==1)
    return 1;
  else
    return n+fun(n-1);  
}
int main()
{
   int n;
   printf("请输入n:");
   scanf("%d",&n);
   printf("1+2+3+...+n=%d\n",fun(n));
}

回答2:

#include

int plus(int);
int main()
{
int n;
scanf("%d",&n);
printf("%d",plus(n));
}

int plus(int n)
{
if(n==1)
return 1;
else
return (n+plus(n-1));
}

回答3:

#include
#define N 3
int fun(int a)
{
a++;  //如果改为1+3+5+7,则改成a=a+2;
return a;
}
main()
{
int first=1; //第一个数
int last=first;  //最后一个数
int i,sum=1;
for(i=0;i {
last=fun(last); //递归
sum=sum+last; //求和
}
printf("%d\n",sum);
}