중첩 while문으로 아래처럼 출력하는 문제를 풀고 있어요.
*
o*
oo*
ooo*
oooo*
제가 작성한 코드를 실행하면 아래처럼 나옵니다.
*
o*
oo*
oo*
oo*
어디서 막혀서 원하는 결과가 안 나오는지 모르겠어요.
다른 방식보다 제 코드에서 잘못된 부분을 알려주시면 감사하겠습니다.
while문으로 별 모양 출력하는 코드 질문드려요
봉봉 2026.08.23 댓글 6
봉봉 2026.08.23 댓글 6
중첩 while문으로 아래처럼 출력하는 문제를 풀고 있어요.
*
o*
oo*
ooo*
oooo*
제가 작성한 코드를 실행하면 아래처럼 나옵니다.
*
o*
oo*
oo*
oo*
어디서 막혀서 원하는 결과가 안 나오는지 모르겠어요.
다른 방식보다 제 코드에서 잘못된 부분을 알려주시면 감사하겠습니다.
가온길 2026.08.23
답변 주신 분들 모두 감사합니다.
여러 가지 방법을 알려주셔서 더 열심히 공부해야겠어요.
든해 2026.08.23
이렇게 작성하면 될 것 같아요.
```c
#include <stdio.h>
int main(void)
{
int i = 0, j = 0;
while (i < 5)
{
while (j < i)
{
printf("o");
j++;
}
j = 0;
printf("*
");
i++;
}
}
```
스릉흔드 2026.08.23
저도 이 문제 때문에 한참 고민했어요.
중첩 for문으로 만들면 좀 더 이해하기 쉬울 수 있어요.
```c
#include <stdio.h>
int main(void)
{
int i, j;
for (i = 0; i < 5; ++i)
{
for (j = 0; j < i; ++j)
printf("o");
printf("*
");
}
}
```
블레이 2026.08.23
처음엔 어려워도 차근차근 해보면 금방 익숙해질 거예요.
말씀하신 것처럼 하나씩 풀어가면 됩니다.
봉봉 2026.08.23
디버깅하면서 a, b, c의 값이 어떻게 바뀌는지 확인해보면 도움이 돼요.
저도 코드 수정 자체보다 디버깅으로 오류를 찾는 데 시간이 더 걸릴 때가 많아요.
미투리 2026.08.23
처음에는 연습장에 a, b, c 값을 적고 출력 결과도 따로 기록해보세요.
코드 흐름을 따라가며 값이 어떻게 바뀌는지 보면 이해하기 쉬워요. 번거롭다면 디버깅 기능으로 따라가도 좋고요.