: 같은 처리 과정을 여러 번 되풀이하는 것
: 주어진 조건이 만족되는 동안 문장들을 반복 실행
while (조건식) {
문장; // 조건식이 참이면 문장 반복 실행
...
}
<aside> 📢 while 문 사용 시 종료조건이 명확히 있어야 한다. (안그러면 무한 루프 돌게 됨)
</aside>
#include <stdio.h>
int main(void)
{
int i = 0;
while (i < 5)
{
printf("Hello world! \n");
i++;
}
return 0;
}

변수의 증감
int x = 1;
while (x < 10)
{
printf("while loop\n");
x--; //변수의 증가가 아닌 감소
}
반복 루프 내에 증감조건 포함
int x = 0;
while (x < 3)
printf("while loop\n");
x++; // 반복 루프 내에 포함되어 있지 않음
while 문의 syntax 구조 정확히 파악
int x = 0;
while (x < 3); // 조건식 뒤에 세미콜론(;) - syntax error
{
printf("while loop\n");
x++;
}
센티널(sentinel) 값(보초값)
: 입력되는 데이터의 끝을 알리는 특수 값
#include <stdio.h>
int main(void)
{
int grade, n;
float sum, average;
n = 0;
sum = 0;
grade = 0;
printf("종료 시 음수를 입력하시오.\n");
while (grade >= 0) // 센티널 값이 음수가 됨
{
printf("성적을 입력하시오. : ");
scanf("%d", &grade);
sum += grade;
n++;
}
sum -= grade;
n--;
average = sum / n;
printf("성적의 평균은 %f 입니다.\n", average);
return 0;
}
