Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C 재귀 함수를 사용하여 주어진 숫자를 반전시키는 프로그램

<시간/>

"재귀 함수"는 함수 본문에서 자신을 다시 호출하는 것입니다.

예를 들어,

  • 1부터 N까지의 모든 정수의 곱인 정수 'N'의 계승을 계산하는 함수 팩트( ).

  • 1(또는) 0의 인수와 함께 함수는 1을 반환합니다. 그렇지 않으면 n*fact(n-1)을 반환합니다. 이는 'n'이 1이 될 때까지 발생합니다.

Fact (5) =5* fact (4)
   =5*4*3* fact (3)
   =5*4*3*2* fact (2)
   =5*4*3*2*1 fact (1)
   =5*4*3*2*1
   = 120.

예시

다음은 숫자를 뒤집기 위해 재귀 함수를 사용하는 C 프로그램입니다 -

#include<stdio.h>
main ( ){
   int n,f;
   int fact (int);
   clrscr ( );
   printf ("enter a number");
   scanf ("%d", &n);
   f= fact (n);
   printf (factorial value = %d",f);
}
int fact (int n){
   int f;
   if ( ( n==1) || (n==0))
      return 1;
   else
      f= n*fact (n-1);
   return f;
}

출력

출력은 다음과 같습니다 -

Enter a number 5
Factorial value = 120

다음은 재귀 함수를 사용하여 주어진 숫자를 뒤집는 또 다른 C 프로그램입니다 -

#include<stdio.h>
int sum=0,rem;
int main(){
   int num,revNum;
   printf("enter number:\n");
   scanf("%d",&num);
   revNum=revNumFunction(num);//calling function to reverse the given number
   printf("the number after reverse :%d",revNum);
   return 0;
}
revNumFunction(int num){
   if(num){
      rem=num%10;
      sum=sum*10+rem;
      revNum(num/10);
   }
   else
      return sum;
}

출력

출력은 다음과 같습니다 -

enter number: 1357
the number after reverse is :7531