산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C - 재귀

재귀는 자기 유사 방식으로 항목을 반복하는 프로세스입니다. 프로그래밍 언어에서 프로그램이 동일한 함수 내에서 함수를 호출하도록 허용하는 경우 이를 함수의 재귀 호출이라고 합니다.

void recursion() {
   recursion(); /* function calls itself */
}

int main() {
   recursion();
}

C 프로그래밍 언어는 재귀, 즉 자신을 호출하는 함수를 지원합니다. 그러나 재귀를 사용하는 동안 프로그래머는 함수에서 종료 조건을 정의하는 데 주의해야 합니다. 그렇지 않으면 무한 루프에 빠지게 됩니다.

재귀 함수는 숫자의 계승 계산, 피보나치 수열 생성 등과 같은 많은 수학적 문제를 해결하는 데 매우 유용합니다.

숫자 계승

다음 예는 재귀 함수를 사용하여 주어진 숫자의 계승을 계산합니다 -

라이브 데모
#include <stdio.h>

unsigned long long int factorial(unsigned int i) {

   if(i <= 1) {
      return 1;
   }
   return i * factorial(i - 1);
}

int  main() {
   int i = 12;
   printf("Factorial of %d is %d\n", i, factorial(i));
   return 0;
}

위의 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다. -

Factorial of 12 is 479001600

피보나치 수열

다음 예는 재귀 함수를 사용하여 주어진 숫자에 대한 피보나치 수열을 생성합니다 -

라이브 데모
#include <stdio.h>

int fibonacci(int i) {

   if(i == 0) {
      return 0;
   }
	
   if(i == 1) {
      return 1;
   }
   return fibonacci(i-1) + fibonacci(i-2);
}

int  main() {

   int i;
	
   for (i = 0; i < 10; i++) {
      printf("%d\t\n", fibonacci(i));
   }
	
   return 0;
}

위의 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다. -

0	
1	
1	
2	
3	
5	
8	
13	
21	
34

C 언어

  1. C# Hello World - 첫 번째 C# 프로그램
  2. C# 키워드 및 식별자
  3. C# 변수 및 (기본) 데이터 형식
  4. C# 연산자
  5. C# 비트 및 비트 시프트 연산자
  6. C# 기본 입력 및 출력
  7. C# 식, 문 및 블록(예제 포함)
  8. C# 주석
  9. C# break 문
  10. C# 계속 문