c언어 제어문 - 반복문 for문, while문, do ~ while문

제어문 중에서도 선택문의 if문, if ~ else문, if ~ else if ~ else문 그리고 switch ~ case문까지 공부해봤습니다. 이번에는 반복문의 유형(for문, while문, do~ while문)에 대해서 공부해보는 시간을 가져보겠습니다. 

 

조건식의 위치에 따른 반복문!

반복문은 조건식을 만족하는 동안 문장을 반복하는 기능을 가지고 있습니다. 따라서 반복문을 작동하게 하는 조건식 반복문마다 조금씩 차이를 보입니다. 반복문을 하나씩 살펴보면서 반복문이 어떤 순서에 따라서 동작하는지 반복문들의 특이점과 차이점에 대해서 알아보겠습니다. 

 

for문 

for문은 원하는 횟수만큼 반복문을 실행해야 할때 사용합니다. 

for문의 밖에서 변수의 선언과 초기값 세팅
for문의 밖에서 변수선언 후 for문에서 변수의 초기값 세팅 
for문에서 변수 선언과 초기값 세팅

for문의 초기값은 for문의 밖에서 변수를 선언하고 초기값을 세팅하는 방법과 for문에서 변수 선언과 함께 초기값을 세팅해주는 방법이 있습니다. 

 

for문의 동작은 1. 초기값과 조건식을 비교하고 조건이 참이면 2. 실행문으로 넘어가서 실행문을 수행합니다. 3. 실행문이 수행이 되었다면 증감식을 실행하고 4. 증감된 값과 조건식을 다시 비교한뒤에 조건이 참이면 2번 실행문을 조건이 거짓이면 for문을 종료하게 됩니다. 

 

작동은 1번 -> 2번 -> 3번 -> 4번 -> 2번 -> 3번 -> 4번 순서로 조건이 참일동안 계속해서 실행됩니다. 

 

 소스코드의 for문의 조건을 보면 초기값 a가 10보다 작을동안 반복하는 반복문입니다. 위의 설명에서와 같이 for문은 조건식 참이라면 실행문을 수행하고 실행문이 끝나고 난뒤에 증감식을 수행하는데 위에 소스처럼 a가 10보다 작을동안 반복문을 돌다가 a의 값이 9가 되었을때 증감식을 하게되면 a의 값이 10이되어 조건식에서는 거짓으로 for문을 끝내게 됩니다. a는 이미 증감식으로 증가가 되었기 때문에 반복문이 끝나고 난뒤의 a값은 10이 되어지게 됩니다. 

 

while문

while문은 for문과 마찬가지로 조건식이 참인 동안 실행되는 반복문입니다. 

 

while문은 for문의 조건과 비슷하지만 증감식의 연산이 위에서 정의되어지던 for문과 다르게 while문은 실행문 내에서 증감식을 수행하게 됩니다.  

 

do ~ while문

지금까지는 for문과 while문은 모두 조건을 먼저 검사를 한뒤에 조건이 참인 경우에만 실행하는 반복문이 었습니다. 하지만 do ~ while은 위에서 배웠던 녀석들과 달리 조건을 검사하기전에 한번은 먼저 실행하게 됩니다. do ~ while에서의 실행 영역은 do의 영역인데 do의 영역이 while 보다 위에 위치하기 때문에 반복할 문장을 조건식과 관계없이 최소 한 번은 실행합니다. 

 

이번에는 제어문의 반복문 for문, while문, do ~ while문을 배워봤습니다. 다음에는 다중 반복문을 활용한 구구단 만들기와 '*'별을 찍어보면서 공부해보는 시간을 가져보겠습니다.

댓글

Designed by JB FACTORY