반응형
#include <stdio.h>
int main() {
int total_rows = 'z' - 'a' + 1; // a에서 z까지의 문자 수 계산
for (int i = 0; i < total_rows; i++) {
// 각 줄마다 왼쪽에 공백을 출력하여 우측 정렬을 수행
for (int j = 0; j < i; j++) {
printf(" ");
}
// 문자 출력
for (char ch = 'a' + i; ch <= 'z'; ch++) {
printf("%c", ch);
}
printf("\n");
}
return 0;
}
- 문자 수 계산: 'z'에서 'a'를 빼고 1을 더해서 총 층 수 (total_rows)를 계산합니다.
- 반복문 실행: 반복문을 총 층 수부터 시작하여 0까지 역순으로 실행합니다. 각 반복은 하나의 층을 나타냅니다.
- 공백 출력: 각 층마다 층 번호와 같은 수의 공백을 출력하여 문자들이 우측으로 정렬되게 합니다.
- 문자 출력: 각 층마다 시작 문자는 'a'에서 현재 층 번호를 더한 문자부터 'z'까지 출력합니다.
- 줄바꿈: 각 층의 출력을 완료한 후 줄바꿈을 수행합니다.
위 코드를 컴파일하고 실행하면, 'a'부터 시작하여 맨 아래 층에 가장 많은 문자가 출력되고, 맨 위 층으로 올라갈수록 문자가 하나씩 줄어드는 우측 정렬된 뒤집힌 직각 삼각형 형태로 출력됩니다.
반응형