컴퓨터 과학

c언어-사용자 정의 함수,중첩 루프

용용it 2023. 1. 19. 09:42

본인만의 함수, 즉 사용자 정의 함수를 만드는 방법은

void 뒤에 원하는 함수명을 적은 뒤 괄호 안에 void를 적어준다.

void cough(void)
{
    printf("cough\n")
}

cough 라는 함수를 만들었다. 

 

이제 cough 함수를 불러오면 cough를 출력한다.

 

int n; 

n은 쓰레기 값이라고 부르는 값을 가진다.

n이라고 하는 변수를 달라는 일종의 힌트.

 

do-while 루프

이 불리언 표현 while(n<1);이 참일때 다음을 수행하라는 뜻이다.

만약 n이 1보다 작다면 계속해서 질문을 반복하는 것이다.

while을 단독으로 사용하면 while의 조건이 참이어야만 수행을 한다.

하지만 do-while은 do에서 무조건 한 번은 먼저 수행하게 한다.

 

중첩 루프

for 루프를 이용한다.

#include <cs50.h>
#include <stdio.h>

int main(void)
{
    int n;

    do
    {
        n = get_int("Size: ");
    }
    while (n < 1);

    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            printf("#");
        }
        printf("\n");
    }
}

int n;으로 정수의 값을 받는 변수 n을 정의한다.

do{} while()을 이용해 while()의 조건이 만족할 때 까지 get_int 함수로 사용자가 입력값을 받아 n에 저장한다.

do{} while()을 사용하면 조건과 상관없이 최소한 한 번은 {}안의 내용을 실행할 수 있다.

 

그리고 for 루프를 두 번 중첩해서 돌면서 "#" 을 출력한다.

첫 번째 루프에서는 변수 i를 기준으로 n번 반복하고, 그 안의 내부 루프에서는 변수 j를 기준으로 n번 반복한다.

 

내부 루프가 끝날 때마다 줄바꿈을 수행한다. 따라서 최종적으로 가로가 n개, 세로가 n개인 "#"이 출력된다.