ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 재귀 함수
    c언어 기초 2017. 3. 28. 17:47

    1. 재귀 함수의 기본적 이해

    자기 자신을 다시 호출하는 형태의 함수


    #include <stdio.h>

     

    void Recursive(void)

    {

       printf("Recursive Call! \n");

       // Recursive();

    }

     

    int main(void)

    {

       Recursive();

       return 0;

    }


    * 탈출 조건의 필요성

    무한 재귀 호출을 피하기 위해서




    * 탈출 조건의 이해


    #include <stdio.h>


    void Recursive(int n)

    {

        printf("Recursive Call! \n");

        if(n==1)

            return;

        Recursive(n-1);

    }


    int main(void)

    {

        int a=2;

        Recursive(a);

        return 0;

    }



    * 재귀 함수 Design 사례
    팩토리얼(factorial) 계산을 위한 알고리즘

     


     




    알고리즘을 코드로 옮기기 위한 pseudo code와 C 코드

    // 시작 조건 : n은 0 이상이다.

    시작(START) : f(n) 호출

         1. 만약에 n이 0이면 1을 반환 

         2. 그렇지 않다면 n  f(n-1)을 반환.

    끝(END)


     int f(int n)

    {

        if (n==0)

            return 1;

        else

            return n*f(n-1);

    }








    'c언어 기초 ' 카테고리의 다른 글

    포인터  (0) 2017.04.01
    1차원 배열  (0) 2017.03.30
    함수의 정의와 선언  (0) 2017.03.28
    for/무한루프/continue/break문  (0) 2017.03.22
    do - while문  (0) 2017.03.22

    댓글

Designed by Tistory.