3 回答

TA貢獻1793條經驗 獲得超6個贊
#include"stdio.h"
void main()
{
int sum(int);
int sumhe,m;
xy:
printf("請輸入上限:m\n");
scanf("%d",&m);
sumhe=sum(m);
if(sumhe==-1)
{
printf("您的輸入上限有誤,請重新輸入:\n");
goto xy;
}
else
printf("1到%d的累加和為%d\n",m,sumhe);
}
int sum(int n)
{
int i,s=0;
if(n<0)
return(-1);
else if(n==0)
return(0);
else
for(i=1;i<=n;i++)
s=s+i;
return(s);
}
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
#include"stdio.h"
void main()
{
int facto(int);
int fact,m;
scanf("%d",&m);
fact=facto(m);
printf("%d",fact);
}
int facto(int n)
{
int f;
if(n==1)
f=1;
else
f=facto(n-1)*n;
return(f);
printf("\n");
}

TA貢獻1827條經驗 獲得超8個贊
sum(int n)
{if(n<0)
return(-1);
else if(n==0)_____return 0_________;
else_____return (n+1)*n/2________;
一個求階乘的遞歸調用函數。
facto(int n)
{if(n==1)____return 1_______;
else return(___n*facoto(n-1)___________);
}
添加回答
舉報