#include<stdio.h>
int sum(int num)
{
int sum1=num;
if(num>1)
{
sum1+=sum(num-1);
}
return sum1;
}
int main()
{
int num=0;
printf("请输入非负整数的最大值");
scanf("%d",&num);
//sum(num);
printf("the sum is %d\n",sum(num));
return 0;
}
方法二
#include<stdio.h>
int sum(int num)
{
if(num==1)
{
return 1;
}
return sum(num-1)+num;
}
int main()
{
int num=0;
printf("请输入非负整数的最大值");
scanf("%d",&num);
//sum(num);
printf("the sum is %d\n",sum(num));
return 0;
}
本文介绍了两种使用C语言实现的递归算法,用于计算非负整数的累加和。第一种方法通过将当前数值与前一项的递归调用结果相加来计算总和。第二种方法采用更简洁的递归方式,直接返回当前数与递减后的数的递归调用结果之和。这两种方法都展示了递归算法的基本思想和应用。
377

被折叠的 条评论
为什么被折叠?



