C언어 초급 - 7장: 반복문 (7.3 for 문)
2025. 2. 23. 19:09ㆍ프로그래밍 언어/C
7.3 for 문
C 언어에서 for 문은 반복문 중 하나로, 반복 횟수가 정해진 경우에 가장 적합합니다.
while 문과 do-while 문은 조건을 기반으로 실행되지만, for 문은 초기값, 조건, 증감식을 한 줄에 정리하여 반복 횟수를 명확하게 설정할 수 있습니다.
1. for 반복문의 구조
1.1 for 문 기본 구조
for (초기식; 조건식; 증감식) {
// 반복할 코드
}
📌 각 항목의 역할
- 초기식: 반복문이 시작될 때 한 번만 실행(보통 변수를 초기화).
- 조건식: true이면 실행하고, false이면 반복문 종료.
- 증감식: 한 번 실행될 때마다 반복 변수를 증가(++) 또는 감소(--).
1.2 for 문 예제 – 기본적인 반복문
아래 코드는 1부터 5까지 숫자를 출력하는 프로그램입니다.
#include <stdio.h>
int main() {
for (int i = 1; i <= 5; i++) {
printf("%d\n", i);
}
return 0;
}
출력 결과
1
2
3
4
5
📌 실행 과정
- int i = 1; → i 초기화 (초기식)
- i <= 5; → 조건 확인 (참이므로 실행)
- printf("%d\n", i); → i 값 출력
- i++ → i 값을 증가 (증감식)
- 위 과정을 i > 5가 될 때까지 반복
2. 반복 횟수가 정해진 경우의 활용
2.1 1부터 n까지의 합 계산
#include <stdio.h>
int main() {
int n, sum = 0;
printf("1부터 n까지의 합을 구할 n 값을 입력하세요: ");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
sum += i; // sum = sum + i
}
printf("1부터 %d까지의 합: %d\n", n, sum);
return 0;
}
실행 예시
1부터 n까지의 합을 구할 n 값을 입력하세요: 10
1부터 10까지의 합: 55
📌 설명
- for 문을 사용하여 i 값을 1부터 n까지 증가시키며 sum에 더함.
2.2 구구단 출력
#include <stdio.h>
int main() {
int dan;
printf("출력할 구구단 단수를 입력하세요: ");
scanf("%d", &dan);
for (int i = 1; i <= 9; i++) {
printf("%d × %d = %d\n", dan, i, dan * i);
}
return 0;
}
실행 예시
출력할 구구단 단수를 입력하세요: 7
7 × 1 = 7
7 × 2 = 14
7 × 3 = 21
...
7 × 9 = 63
📌 설명
- for 문을 사용하여 1부터 9까지 곱셈 연산을 반복하여 구구단을 출력.
2.3 별(*) 피라미드 출력
#include <stdio.h>
int main() {
int n;
printf("별(*) 피라미드의 높이를 입력하세요: ");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
printf("*");
}
printf("\n");
}
return 0;
}
실행 예시 (n = 5 입력)
*
**
***
****
*****
📌 설명
- 바깥 for 문 (i) → 줄 수 조정.
- 안쪽 for 문 (j) → 각 줄의 * 개수 조정.
3. for 문에서 사용되는 다양한 활용
3.1 for 문에서 초기식, 조건식, 증감식 변경 가능
#include <stdio.h>
int main() {
for (int i = 10; i >= 1; i -= 2) {
printf("%d ", i);
}
return 0;
}
출력 결과
10 8 6 4 2
📌 설명
- i = 10으로 시작.
- i >= 1이 참이면 실행.
- i -= 2로 i 값을 2씩 감소.
3.2 for 문에서 break 문 사용
#include <stdio.h>
int main() {
for (int i = 1; i <= 10; i++) {
if (i == 5) {
break; // i가 5가 되면 반복 종료
}
printf("%d ", i);
}
return 0;
}
출력 결과
1 2 3 4
📌 설명
- i == 5가 되면 break 문 실행 → 반복 종료.
3.3 for 문에서 continue 문 사용
#include <stdio.h>
int main() {
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
continue; // 짝수일 경우 아래 코드 실행 건너뜀
}
printf("%d ", i);
}
return 0;
}
출력 결과
1 3 5 7 9
📌 설명
- continue 문을 만나면 현재 반복을 건너뛰고 다음 반복 실행.
- 짝수(i % 2 == 0)는 출력하지 않음.
4. for 문 vs while 문 vs do-while 문
반복문 | 실행 순서 | 반복 횟수 지정 | 사용 예제 |
for | 초기식 → 조건 검사 → 실행 → 증감 | 보통 명확한 반복 횟수가 있을 때 사용 | for (i=0; i<10; i++) |
while | 조건 검사 → 실행 | 반복 횟수가 불확실할 때 사용 | while (조건) { 실행 } |
do-while | 실행 → 조건 검사 → 반복 | 최소 한 번 실행 보장 | do { 실행 } while (조건); |
📌 반복 횟수가 정해졌다면 → for 문 사용
📌 반복 횟수가 정해지지 않았거나 조건 기반이라면 → while 문 사용
📌 최소 한 번 실행이 보장되어야 한다면 → do-while 문 사용
5. 정리
개념 | 설명 | 예제 |
for 문 | 반복 횟수가 정해진 경우 사용 | for (i = 0; i < 10; i++) |
break | 특정 조건에서 반복 종료 | if (i == 5) break; |
continue | 특정 조건에서 현재 반복 건너뛰기 | if (i % 2 == 0) continue; |
📌 반복 횟수가 정해진 경우 → for 문 사용
📌 구구단, 리스트 출력, 합 계산 등에서 유용
'프로그래밍 언어 > C' 카테고리의 다른 글
C언어 초급 - 8장: 배열과 문자열 (8.1 배열의 개념) (0) | 2025.02.23 |
---|---|
C언어 초급 - 7장: 반복문 (7.4 반복문의 제어 (break, continue)) (0) | 2025.02.23 |
C언어 초급 - 7장: 반복문 (7.2 do-while 문) (0) | 2025.02.23 |
C언어 초급 - 7장: 반복문 (7.1 while 문) (0) | 2025.02.23 |
C언어 초급 - 6장: 조건문 (6.3 switch-case 문) (0) | 2025.02.23 |