C

for, 다중 for 문, continue, break

김꼬알 2023. 3. 14. 19:55

반복문 옵션

continue

  • 더이상 아래 문장을 실행하지 않고, 반복문 처음으로 돌아감

break

  • 반복문을 빠져나감

 

#include <stdio.h>
int main(){
    int i, sum = 0;
    for(i=1; i <= 10; i +=2){    // i <= 10 이 거짓일 때까지 아래 연산 계속 수행
    	if(i % 2 && i % 3) continue;    // (조건)이 참이면 continue -> 처음부터 다시 연산함
        sum += i;    // (조건)이 거짓일 때 continue를 수행하지 않으므로 연산한 다음 처음부터 연산
    }
    printf("%d", sum);    // 12가 출력됨
    return 0;
}

 

 

다중 반복문

for( i = 0; i < 2; i++ ){    // i < 2 가 참이면 아래 for 문 수행
    for( j = 0; j < 2; j++ ){    // j < 2 가 거짓일 때까지 수행한 후 밖에 for문 다시 수행
    	printf("i : %d, j : %d", i, j);
    }
}

 

 

continue

for( i = 0; i < 3; i++ ){
    if ( i == 1 ) continue;    // (조건)이  참이면 i++, 거짓이면 sum++ 수행
    sum++;
}    // i = 3, sum = 2

 

 

break

for( i = 0; i < 3; i++ ){
	if( i == 1 ) break;    // (조건)이 참이면 break로 블록을 빠져나오게 됨
    sum++;
}    // i = 1, sum = 1

 

#include <stdio.h>
void main(){
    int i, j, sum=0;
    for( i = 1; i < 10; i++ ){    // i = 1~9 까지 수행
    	for( j = 1; j < 10; j++ ){    // j = 1~9까지 수행
            if( j % 3 == 0 ) continue;
            if( i % 4 == 0 ) break;
            sum++;
        }
    }
    printf("%d", sum);    // i가 4, 8일 때 제외하고 6씩 증가하므로 42가 출력됨
}