알고리즘, 자료구조/자료구조

순환호출 (재귀호출) 기초 1

바로이순간 2011. 12. 3. 11:19

#include <stdio.h>

void reverse(char *s) {  //역순으로 출력하는 재귀호출함수
    if(*s==0) return;       //문자열 끝 0을 만나면 그냥 빠져 나감..

    reverse(s+1);           //포인터를 1더해서 다시 재귀호출
    printf("%c",*s);        //현재 위치의 문자를 출력
}

int main() {
    char s[100];

    printf("입력 : ");
    scanf("%s",s);       //문자열을 입력 받고

    reverse(s);             //역순 출력 재귀함수 호출
    printf("\n");
    return 0;
}

작성자 cho_atman[네이버 태양신]

 

#include <stdio.h>

void input() {
    int c;
    if ( (c = getchar()) != '\n' )
        input(); // recursive call
    putchar(c);
}
int main() {
    input();

    return 0;
}

작성자 dujinvest[네이버 지존]