happy coding

[c] 반복문 본문

self study/언어의 기본부터

[c] 반복문

yeoonii 2022. 11. 18. 20:29
TCP school 을 보고 정리한 내용입니다.

반복문(iteration statements)

반복문이란 프로그램 내에서 똑같은 명령을 일정 횟수만큼 반복하여 수행하도록 제어하는 명령문이다. 프로그램이 처리하는 대부분의 코드는 반복적인 형태가 많기에 가장 많이 사용되는 제어문 중 하나이다. 종류로는 1. while 문 2. do / while 문 3. for 문 이 있다.

while 문

while 문은 특정 조건을 만족할 때까지 계속해서 주어진 명령문을 반복해 실행한다.

while (조건식)
{
	조건식의 결과가 참인 동안 반복적으로 실행하고자 하는 명령문;
}

while 문은 우선 조건식이 참(true)인지를 판단하여, 참이면 내부의 명령문을 실행하다. 이렇게 내부의 명령문을 전부 실행하고 나면, 다시 조건식으로 돌아와 또 한 번 참인지를 판단하게 한다. 이렇게 표현식의 검사를 통해 반복해 실행되는 반복문을 루프(loop)라고 한다.

while 문 내부에 조건식의 결과를 변경하는 명령문이 존재하지 않을 때는 프로그램이 영원히 반복되는 데 이것을 무한 루프(infinite loop)에 빠졌다. 고 한다. 반복문에서 조건식이 거짓일 때 반복문이 종료되지만, 무한루프에서는 조건식의 결과가 거짓없이 항상 참이므로 반복문이 종료되지 않고 무한히 실행된다. 이렇게 무한 루프에 빠진 프로그램은 영원히 종료되지 않는다. 그렇기에 특별히 의도한 경우가 아니라면 무한루프는 반드시 피해야 하는 상황이며, while문을 작성할 때는 조건식의 결과가 어느 순간 거짓을 갖도록 조건식의 결과를 변경하는 명령문을 반드시 포함시켜야 한다.

do / while 문

while 문은 루프에 진입하기 전에 먼저 조건식부터 검사하지만, do / while 문은 먼저 루프를 한 번 실행한 후에 조건식을 검사한다. 다시말해, do / while 문은 조건식의 결과와 상관없이 무조건 한 번은 루프를 실행한다.

do {
	조건식의 결과가 참인 동안 반복적으로 실행하고자 하는 명령문;
} while (조건식);

 

for 문

for 문은 while 문과는 달리 자체적으로 초기식, 조건식, 증감식을 모두 포함하고 있는 반복문이다. 따라서 while 문보다는 좀 더 간결하게 반복문을 표현할 수 있다.

for (초기식; 조건식; 증감식)
{
	조건식의 결과가 참인 동안 반복적으로 실행하고자 하는 명령문;
}

이때 for 문을 구성하는 초기식, 조건식, 증감식은 각각 생략될 수 있다.

'self study > 언어의 기본부터' 카테고리의 다른 글

[c] C언어 함수  (0) 2022.11.18
[c] 기타 제어문  (0) 2022.11.18
[c] 조건문  (0) 2022.11.18
[c] 연산자  (0) 2022.11.17
[c] 타입 변환  (0) 2022.11.16
Comments