[C 문법공부] 반복문 정리
c언어에서 다루는 반복문은
- while
- do~while
- for
이렇게 총 3가지이다.
이런 반복문에는 공통적인 특징이 있는데,
반복할 조건, 반복할 코드 이렇게 2가지이다.
조금 더 세세하게 나누면, 초기식 – 조건식 – 루프본체, 변화식 으로 이루어져 있다.
💡 while문
간단한 예시로 살펴보자.
#include <stdio.h>
int main(void)
{
int num = 0;
while(num < 5)
{
printf("Hello world%d\n",num);
num++;
}
return 0;
}
초기식 ► int num = 0;
조건식 ► (num < 5)
변화식 ► num++;
루프본체 ► printf("Hello world%d\n",num);
while문은 루프본체와 변화식이 while문의 중괄호 안에 같이 있다.
그리고 초기식이 while문 밖에 있다.
while문에 무한 루프를 걸기 위해선 (1)을 조건식으로 주면된다.
물론 이때는 루프본체에서 탈출조건을 넣어 break을 걸어줘야한다.
💡 do ~ while문
do~while문은 while문과 유사하지만 반드시 한번은 실행되어야하는 코드가 있을때
사용된다.
#include <stdio.h>
int main()
{
int total = 0, num = 0;
do
{
printf("정수를 입력하세요");
scanf("%d",&num);
total += num;
} while (num!=0);
printf("총 합은 %d",total);
return 0;
}
► do 안에 루프본체가 위치한다.
► while 뒤에 조건식이 위치하고, 세미콜론으로 마무리되어있다.
► do 안에 코드를 반드시 1번은 실행하고, 이후에 while 뒤의 조건식을 확인하게된다.
💡 for문
while문이 초기식과 조건식, 변화식이 분리되어있는 형태라면, for문은 초기식, 조건식, 변화식이 한 곳에 묶어져있다.
for (초기식;조건식;변화식)
{
루프본체
}
이렇게 한 눈에 반복문을 분석할 수 있는 장점이 있다.
#include <stdio.h>
int main(void)
{
int total = 0;
int i, num;
printf("0부터 num까지 덧셈, num을 입력하시오.");
scanf("%d", &num);
for(i=0; i < num+1; i++)
total+=i;
printf("0부터 %d까지 덧셈 결과: %d \n", num, total);
return 0;
}
► for문의 무한 반복을 위해서는 조건식을 비우면된다.
► for문은 반복회수가 정해져있는 경우에 적합하다.
댓글남기기