카테고리 없음

C언어 기초 기타 제어문

qiuye 2024. 12. 12. 16:01

    C 언어에서 break문과 continue문은 매우 중요한 제어문으로, 반복문과 조건문 내에서 코드 실행 흐름을 제어하는 데 사용됩니다. 각 문법과 동작 방식을 더 자세히 설명드리겠습니다.

1. break 문

정의:

break 문은 현재 실행 중인 반복문(예: for, while, do-while)이나 switch 문을 즉시 종료시키는 제어문입니다. 반복문 내에서 break가 실행되면 그 즉시 반복문을 종료하고, 반복문 이후의 코드로 제어가 넘어갑니다. break는 또한 중첩된 반복문에서 가장 가까운 반복문만 종료합니다.

사용 사례:

  1. 반복문에서 break 사용
    • 반복문을 진행하면서 특정 조건을 만족했을 때 반복을 종료해야 하는 경우 유용합니다.

    이 예제에서 i == 5일 때 break 문이 실행되고, 반복문이 종료됩니다. 따라서 0 1 2 3 4까지만 출력되고, 이후 코드인 printf("\nEnd of loop\n")가 실행됩니다.

 

2.switch 문에서 break 사용

  • switch 문에서는 각 case가 끝날 때마다 break를 사용하여 switch 문을 종료시킵니다. 만약 break를 사용하지 않으면, 실행이 다음 case로 이어지며 이를 fall-through라고 합니다.

 

  • num이 2일 때, case 2가 실행되고 break가 실행되어 switch 문을 빠져나갑니다.

3.중첩된 반복문에서 break 사용

  • break는 가장 가까운 반복문만 종료시킵니다. 즉, 중첩된 반복문에서 break는 바깥쪽 반복문까지 종료시키지 않으며, 가장 안쪽의 반복문만 빠져나옵니다.

위 예제에서 j == 2일 때 break가 실행되어 안쪽 반복문만 종료되고, 바깥쪽 반복문은 계속 실행됩니다.

 


2. continue 문

정의:

continue 문은 반복문 내에서 현재 반복을 건너뛰고, 다음 반복으로 넘어가도록 합니다. 즉, continue가 실행되면 그 이후의 코드는 실행되지 않고, 반복문의 조건을 평가하여 다음 반복이 시작됩니다.

사용 사례:

  1. 반복문에서 continue 사용
    • continue는 특정 조건을 만족할 때 이후 코드를 건너뛰고 반복문을 계속할 때 유용합니다.

여기서 i가 짝수일 경우 continue 문이 실행되며, printf가 건너뛰어지고 홀수만 출력됩니다.

 

2.while 문에서 continue 사용

  • while 문에서도 continue를 사용할 수 있습니다. continue는 조건식을 다시 평가하여 반복을 계속 진행시킵니다.

 

3.do-while 문에서 continue 사용

  • do-while 문에서도 continue가 동일하게 동작합니다. continue가 실행되면 do-while 문에서 조건식을 다시 평가합니다.

 

4.중첩된 반복문에서 continue 사용

  • continue 문은 가장 가까운 반복문에서만 적용됩니다. 중첩된 반복문에서는 특정 조건에서 바깥쪽 반복문을 건너뛰지 않고, 안쪽 반복문만 건너뛰게 됩니다.

 

break와 continue의 차이점

        구분                                            break                                                             continue

역할 반복문을 즉시 종료 현재 반복을 건너뛰고, 조건을 재평가하여 다음 반복으로 넘어감
사용 위치 반복문, switch 문 반복문
제어 흐름 반복문 또는 switch 문을 종료시킴 현재 반복을 건너뛰고, 다음 반복을 진행하도록 함
주로 사용되는 경우 반복문을 중단하고 종료하고 싶을 때 반복문 내에서 일부 조건을 건너뛰고 싶을 때

결론:

  • break는 반복문이나 switch 문을 중단시키며, continue는 현재 반복을 건너뛰고 다음 반복으로 넘어가도록 합니다.
  • break와 continue는 반복문과 조건문 내에서 코드 흐름을 제어하는 데 매우 유용합니다. break는 반복문을 완전히 종료하는 데 사용하고, continue는 반복문 내에서 조건에 맞지 않거나 불필요한 작업을 건너뛰고자 할 때 사용합니다.