찾다
  • 로그인
  • 가입
비밀번호 재설정 성공

당신이 관심을 갖고 있는 프로젝트를 팔로우하고 그들에 관한 최신 뉴스를 맛보세요

C 재귀

수집 205
읽다 91675
업데이트 시간 2016-09-11

재귀란 함수의 정의에서 함수 자체를 이용하는 방법을 말합니다.

예:
옛날에 산이 있었고, 그 산속에 절이 있었는데, 그 절에 늙은 스님이 있었는데, 그가 젊은 스님에게 이야기를 하고 있었어요! 무슨 이야기인가요? “옛날에 산이 있었고, 그 산에 사찰이 있었습니다. 절에 늙은 스님이 있었는데, 그가 젊은 스님에게 이야기를 들려주고 있었습니다! 무슨 이야기일까요? , 산이 있고, 산속에 사찰이 있었는데, 그 사찰에 늙은 스님이 있었는데, 어린 스님에게 이야기를 들려주더군요.. .'"

구문 형식은 다음과 같습니다.

void recursion(){
   recursion(); /* 函数调用自身 */}int main(){
   recursion();}

C 언어는 재귀를 지원합니다. 즉, 함수가 자기 자신을 호출할 수 있습니다. 그러나 재귀를 사용할 때 프로그래머는 함수 종료 조건을 정의하는 데 주의를 기울여야 합니다. 그렇지 않으면 무한 루프에 들어갈 것입니다.

재귀 함수는 숫자의 계승 계산, 피보나치 수열 생성 등과 같은 많은 수학적 문제를 해결하는 데 중요한 역할을 합니다.

숫자의 계승

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

#include <stdio.h>double factorial(unsigned int i){   if(i <= 1)   {      return 1;   }   return i * factorial(i - 1);}int  main(){    int i = 15;
    printf("%d 的阶乘为 %f\n", i, factorial(i));    return 0;}

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

15 的阶乘为 1307674368000.000000

피보나치 수열

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

#include <stdio.h>int fibonaci(int i){   if(i == 0)   {      return 0;   }   if(i == 1)   {      return 1;   }   return fibonaci(i-1) + fibonaci(i-2);}int  main(){    int i;    for (i = 0; i < 10; i++)    {
       printf("%d\t%n", fibonaci(i));    }    return 0;}

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

0112358132134
핫 AI 도구
Undress AI Tool
Undress AI Tool

무료로 이미지를 벗다

AI Clothes Remover
AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undresser.AI Undress
Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

Stock Market GPT
Stock Market GPT

더 현명한 결정을 위한 AI 기반 투자 연구

인기 있는 도구
메모장++7.3.1
메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6
드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전
SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)