Coding & Programming/C언어 기초(A-Z)

[C언어 기초코딩: 예제로 간단 정리] 5. 반복문(Loops)

mainCodes 2021. 3. 9. 19:33

JollyTree의 C언어 기초코딩: 예제로 간단 정리 - 5. 반복문(Loops)

안녕하세요 JollyTree(•̀ᴗ•́)و입니다. C언어의 반복문 종류는 다음과 같습니다.

for 문
while 문
do while 문

각 반복문들의 기본 구조는 다음과 같습니다.

for 문

for(초기화; 조건식; 증감식)
    문장;
 
while 문

while(조건식)
    문장;
 
do while 문

do 
    문장;
while(조건식)

for문은 for문의 조건식에 사용할 변수를 먼저 초기화하고 반복할 횟수를 정하는 조건식을 세미콜론(';')으로 구분하여 정의하고 마지막에 변수의 증감식을 정의합니다. 예제를 보면 더 쉽게 이해 할 수 있으니 for 문을 이용한 반복 예제를 살펴보겠습니다. 아래 예제는 구구단 2단을 for문으로 작성한 예제입니다.

 

for문을 이용한 구구단(2단 ) 계산 예제:

1
2
3
4
5
6
7
8
9
#include <stdio.h>
 
int main(void)
{
    int i;
 
    for(i=0; i<9; i++)    
        printf("2 x %d = %d\n", i+12*(i+1));
}
cs

 

for(i = 0; i < 9; i++) 문장은 i를 0으로 초기화하고, i가 9보다 작을 때까지 i를 +1씩 증가시키며 printf() 함수를 반복하여 실행하는 코드입니다. printf() 내의 i+1, 2*(i+1)은 반복될 때 마다 i의 값이 0~9까지 증가하며 수식에 반영되면서 아래와 같이 실행됩니다.

 

실행결과(Output):

다음은 같은 결과를 while문을 이용하여 작성해 보았습니다. while문은 while(조건식) 으로 표현합니다. 조건식에 맞춰 반복되는 것을 중단시키기 위해 정수형 i 변수를 먼저 0으로 초기화 하고, i = i +1; 문장을 이용하여 i의 값을 +1씩 증가시켰습니다. i < 9의 조건이 거짓이 되면 반복을 중단하게 됩니다.

 

while문을 이용한 구구단(2단 ) 계산 예제:

1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
 
int main(void)
{
    int i;
 
    i = 0;        // i를 0으로 초기화
    while(i < 9)
    {
        printf("2 x %d = %d\n", i+12*(i+1));
        i = i + 1;
    }
}
cs

실행결과(Output):

그럼 마지막으로 do while문을 이용하여 동일한 결과를 도출해 보겠습니다. 아래 예제에서와 같이 do while 문은 실행되면 먼저 printf()와 i = i + 1 코드를 먼저 실행을 하게 됩니다. 앞서 설명한 for문, while문과는 조건식이 다른 위치에 있습니다.

for문과 while문은 조건식이 거짓이면 문장 자체를 한줄도 실행하지 않지만, do while문은 조건식이 뒤에 있기 때문에 문장들을 최초 1회 먼저 실행하고 조건식이 거짓이 될때까지 반복하여 실행합니다.

 

do while문을 이용한 구구단(2단 ) 계산 예제:

1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
int main(void)
{
    int i;
 
    i = 0;
    do
    {
        printf("2 x %d = %d\n", i+12*(i+1));
        i = i + 1;
    }while(i < 9);
}
cs

예제를 실행해보면 do while 문도 동일한 실행결과를 얻을 수 있습니다.

 

실행결과(Output):

지금까지 C언어 반복문들의 기본 구조와 사용 예제를 살펴보았습니다. 코드에 따라 여러 개의 for과 while이 복합적으로 섞여 있을 수도 있고 조건식을 다양하게 적용할 수도 있습니다. for 문을 쓸지, while 문을 쓸지 그리고 do while 문을 쓸지는 그때 그때 선택해서 사용하면 되는데 많은 예제를 접하면 도움이 되는 것 같습니다. 

 

반복문들은 여러가지로 형태로 많이 사용되고 있고 중요하다고 생각되어 있어 기본 구조를 파악하는 것만으로는 조금 부족하다는 느낌이 듭니다. 그래서 사용 예제를 더 작성해 볼 예정입니다.


이상 JollyTree였습니다 (•̀ᴗ•́)و