我的函数获取一个数字并返回输入之前的数字之和,包括输入;但是,我想知道是否可以计算从 1 开始到 n 结束的连续整数的总和(作为输入)
#include<stdio.h>
int sum(int x){
if(x>0)return x+sum(x-1);
else return 0;
}
main(){
int x;
scanf("%d",&x);;
printf("%d\n\n",sum(x));
}
我找到了问题的答案,但 stackoverflow.com 不让我回答。所以,我会在这里回答:
这真的很简单,它所需要的只是另一个增量参数和另一个跟踪输入值的参数。
#include<stdio.h>
int sum(int x,int t){
if(t<=x) return t+sum(x,t+1);
else return 0;
}
main(){
int x;
printf("enter int: ");
scanf("%d",&x);
printf("%d\n",sum(x,0));
}