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;
}
팩토리얼(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 |