私の関数は数値を取得し、入力を含む入力の前に数値の合計を返します。ただし、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));
}