✅ 1. 이중 반복문 구조
for(int i=1; i<=5; i++){
for(int j=1; j<=5; j++){
// 실행문
}
}
👉 의미
반복문 안에 또 다른 반복문이 있는 구조
👉 핵심:
바깥 반복 1번 → 안쪽 반복 전체 실행
✅ 2. 별 찍기 기본 구조
for(int i=1;i<=5;i++){
for(int j=5; j>=i; j--){
printf("-");
}
for(int k=1; k<=i; k++){
printf("*");
}
printf("\n");
}
✅ 3. 코드 역할 분석
| 반복문 | 역할 |
| i | 줄(행) |
| j | 공백(-) |
| k | 별(*) |
✅ 4. 실행 흐름 표
| i | j 반복(j>=i) | -개수 | k반복 (k<=i) | * 개수 | 출력 |
| 1 | 5→1 | 5 | 1 | 1 | -----* |
| 2 | 5→2 | 4 | 2 | 2 | ----** |
| 3 | 5→3 | 3 | 3 | 3 | ---*** |
| 4 | 5→4 | 2 | 4 | 4 | --**** |
| 5 | 5→5 | 1 | 5 | 5 | -***** |
✅ 5. 핵심 패턴
✅ i가 증가할수록
👉 공백(-)은 줄어들고
👉 별(*)은 늘어난다
✅ 6. 조건의 중요성 🔥
✅ 올바른 코드
for(int j=5; j>=i; j--){
👉 특징
i에 따라 반복 횟수 변함 ✅
❌ 잘못된 코드(될 줄 알았다)
for(int j=5; j>=1; j--){
👉 문제
항상 5번 반복 ❌
→ 공백이 변하지 않음
✅ 결과 비교
✅ j >= i
-----*
----**
---***
--****
-*****
❌ j >= 1
-----*
-----**
-----***
-----****
-----*****
👉 ❌ 모양 깨짐
✅ 7. 핵심 원리
❗ 패턴을 만들려면 i가 반드시 조건에 포함되어야 한다
✅ 8. 두 가지 구현 방식 비교
✅ 내 방식 (감소)
for(int j=5; j>=i; j--)
👉 특징:
큰 값 → 줄여 나감
✅ 다른 방식 (증가)
for(int j=i; j<5; j++)
👉 특징:
작은 값 → 늘려 나감
✅ 차이
| 방식 | 설명 |
| 감소 방식 | 위에서 깎는 느낌 |
| 증가 방식 | 아래에서 채우는 느낌 |
✔ 둘 다 결과는 동일함
✅ 9. 핵심 개념 총정리
✅ 중요한 규칙 3개
1. i → 줄을 의미한다
2. j → 공백 개수를 조절한다
3. k → 별 개수를 늘린다
✅ 핵심 공식
공백 → 줄어야 함
별 → 늘어나야 함
✅ ✅ 최종 한 줄 정리
이중 반복문에서는 바깥 반복문(i)이 줄을 결정하고, 안쪽 반복문(j, k)이 공백과 별의 개수를 조절하여 패턴을 만든다.
😎 한 방 요약
i = 줄
j = 공백
k = 별
→ i에 따라 j는 줄고, k는 늘어야 모양이 나온다
'c언어' 카테고리의 다른 글
| 조건에서 깨달은 핵심 (0) | 2026.05.31 |
|---|---|
| 이중 반복문 핵심 깨달음 정리 (0) | 2026.05.31 |
| 이중 반복문 완전 정리 (파헤치기🔥) (0) | 2026.05.31 |
| for문 vs while문 정리 (0) | 2026.05.31 |
| 반복문과 증감 연산자 정리 (0) | 2026.05.31 |