반응형

do ~ while문

do  ~ while문은 while과 같은 기능을 하지만, 테스트 조건식이 끝에 있는 것만 다릅니다. 이 것이 의미하는 것은 무조건 1회를 실행하고 다음 실행을 할 것인지 여부는 테스트 조건식에 의해서 판단하겠다는 의미입니다.

 

do ~ while문의 기본 구조

do {

    // 처리 로직
 
} while (테스트 조건식);

do ~ while문의 끝에는 문장의 끝 표시인 세미콜론( ; )을 반드시 붙여야 합니다.

 

예제). do ~ while문을 활용한 구구단 출력

#include <stdio.h>

void multipl_dowhile(void)
{
    int i = 0, j = 0;

    do {
        i++;
        j = 0;
        
        do {
            j++;
            printf("%d x %d = %d\n", i, j, i * j);
        } while (j < 9);
        
        printf("\n");
    } while (i < 9);    
}

 

 

break 문과 continue문

break문은 do ~ while문의 실행을 중단하고 block을 빠져나가라는 용도로 사용하며, continue문은 continue 문 아래 부분은 skip하고 아래에 있는 while( 테스트 조건식)부분으로 이동하여 다시 실행할 지를 판단하고 참이면 block의처음부터 실행하라는 의미입니다

 

 

예제). 홀수면 무시하고, 짝수면 더하고, 0 이하면 종료

int  idx;
long sum;
long arr[100];

......

idx = -1;
sum = 0; 

do
{
    idx++;

    if(arr[idx] % 2 == 1) {
        idx++;
        continue;
    } else if(arr[idx] <= 0) {
        break;
    }
    sum += arr[idx];
} while (idx < 100);

위의 예제는 100 개의 데이터가 저장된 arr 변수에서 데이터가 짝수값이면 합산하고, 홀수이면 버리고, 0이하이면 while문을 종료하라는 예제입니다.

do ~ while은 우선 먼저 실행하고 2번째 실행부터는 아래에 있는 while(idx < 100) 부분이 참인지 여부를 확인한 후에 실행 여부가 결정이 됩니다.

continue문을 사용하면 continue 아래 로직은 실행이 되지 않고 아래에 있는 while(idx < 100) 부분으로 바로 이동하여 비교하게 됩니다.

break문은 do ~ while문의 실행을 끝내라는 의미입니다.


 

 

 

C Programming Language 문법

1. C 프로그래밍 언어는? 2. C언어 개발 환경 (실습 환경) 3. C언어의 컴파일 과정 4. C 소스 파일 구성 5. 주석문(Comment) 6. 식별자 명명 규칙 7. C 프로그래밍의 시작 - 함수 8. 변수와 상수 (정수형) 9. 변..

www.it-note.kr

 

 

 

 

 

반응형

'C언어 > 문법' 카테고리의 다른 글

19. 포인터(Pointer) - 기초  (2) 2019.11.20
18. 배열 (配列: array)  (0) 2019.11.06
16. 반복문 (while)  (2) 2019.11.04
15. 반복문 (for)  (2) 2019.11.03
14. 조건문 (switch ~ case)  (2) 2019.11.02
블로그 이미지

자연&사람

행복한 개발자 programmer since 1995.

,