//4입력시 1!+2!+3!+4!=33 출력하는 재귀함수 구현
#include <stdio.h>
int fact(int a);
int main()
{
int a,b;
while(1)
{
int sum=0;
printf("수 입력(종료0) : ");
scanf("%d",&a);
if(a==0)
break;
for(int i=1;i<=a;i++)
{
b=fact(i);
sum=sum+b;
printf("%d!+",i);
}
printf("\b=%d\n",sum);
}
return 0;
}
int fact(int a)
{
if(a<=1)
return 1;
else
return (a*fact(a-1));
}
//재귀로 한것
#include <stdio.h>
int fact(int a);
int sum=0;
int main()
{
int a,b;
while(1)
{
sum=0;
printf("수 입력(종료0) : ");
scanf("%d",&a);
if(a==0)
break;
b=fact(a);
printf("=%d\n",sum);
}
return 0;
}
int fact(int a)
{
int b=a;
if(a==1);
else
{
b=a*fact(a-1);
printf(" + ");
}
printf("%d!",a);
sum=sum+b;
return b;
}