C for 루프 마스터: 문법, 작동 원리, 실전 예제
C for 루프 마스터: 문법, 작동 원리, 실전 예제
C for 루프를 작성, 이해, 활용하는 방법을 명확한 설명과 실습 코드 예제로 알아봅니다.
루프는 지정된 조건이 거짓이 될 때까지 코드 블록을 반복하는 제어 구조입니다. C에는 세 가지 주요 루프 구조가 있습니다:
- for 루프
- while 루프
- do…while 루프
이 튜토리얼은 for 루프에만 집중합니다. while과 do…while 루프는 다음 포스트에서 다룹니다.
for 루프 이해하기
C11 표준에 따른 정식 문법은:
for (초기화; 조건; 갱신) {
/* 루프 본문 */
}
각 구성 요소의 역할:
- 초기화: 루프 시작 전 한 번 실행.
- 조건: 각 반복 전 평가; 거짓이면 루프 종료.
- 갱신: 각 반복 후 실행, 보통 루프 카운터 수정.
for 루프 작동 방식
- 초기화 문이 한 번 실행됩니다.
- 조건 표현식 평가.
false면 루프 종료.
- 참이면 루프 본문 실행 후 갱신 표현식 실행.
- 조건이 거짓이 될 때까지 반복.
논리 조건에 대한 깊은 이해는 C의 관계/논리 연산자 복습을 추천합니다.
루프 흐름도
예제 1: 1~10 숫자 출력
#include <stdio.h>
int main(void) {
for (int i = 1; i <= 10; ++i) {
printf("%d ", i);
}
return 0;
}
출력
1 2 3 4 5 6 7 8 9 10
단계별 분석:
i가 1로 초기화.
- 테스트
i <= 10이 참이므로 i(1) 출력.
- 갱신
++i로 i가 2가 되고 루프 반복.
i가 11이 되면 테스트 실패로 루프 종료.
예제 2: 처음 N개 자연수의 합
#include <stdio.h>
int main(void) {
int num, count, sum = 0;
printf("양의 정수 입력: ");
scanf("%d", &num);
for (count = 1; count <= num; ++count) {
sum += count;
}
printf("Sum = %d\n", sum);
return 0;
}
출력
양의 정수 입력: 10
Sum = 55
설명:
- 변수
num이 사용자 입력 저장.
count가 1로 시작. 테스트 count <= num이 참이라 sum이 1이 됨.
++count 후 count가 2; 테스트 여전히 참, 2 더해 sum은 3.
count가 11이 될 때까지 반복 후 테스트 실패로 루프 정지.
- 최종
sum(55) 출력.
다음엔 while과 do…while 루프로 추가 제어 흐름 패턴을 탐구합니다.