본문 바로가기

Layer7/WriteUp

재귀함수로 별 찍기 WriteUp

코드는 이렇다.

#include <stdio.h>

void print_star(int a){
    if (a==0){
        return;
    }
    for(int i = 0; i < a; i++){
        printf("*");
    }
    printf("\n");
    return print_star(a-1);
}

int main(){
    int a;
    
    printf("Input: ");
    scanf("%d", &a);

    print_star(a);
    
    return 0;
}

 

먼저 printf를 목적으로 한 함수로, void로 print_star() 함수를 선언 해 준다.

 

print_star 함수의 내용은 a를 인자로 받고, a가 0이면 그냥 return

 

아니면 for문으로 i가 a보다 같아질 때 까지 별을 찍어준다

 

포문을 나온 후 개행을 해 주고 재귀함수로 a-1을 인자로 다시 함수를 실행 해 준다.

 

이렇게 계속 돌다보면 a가 0일 때 재귀가 끝난다.

 

main에선 a를 int로 선언 해 주고, scanf로 a에 값을 받는다

 

그리고 a를 인자로 print_star를 실행해준다

'Layer7 > WriteUp' 카테고리의 다른 글

Layer7 웹 1차시 수업내용 정리  (0) 2024.05.16
C언어 코드를 JS코드로 변환하기 (2문제)  (0) 2024.05.16
JS 문법 정리  (0) 2024.05.16
함수, 재귀함수 정리  (1) 2024.04.12
Compare 함수 문제 WriteUp  (0) 2024.04.12