#30. 백준 2439번 문제 풀이: 별찍기-2 | 문제 원본 보기 |
--입력-- 5 --출력-- * ** *** **** *****
한 줄씩 반복하며, 별의 개수도 반복 횟수 마다 공백문자도 반복 루프, 별도 반복해야 하므로 반복 루프를 돌린다. -- for 줄수만큼 반복 for 줄수-별수 만큼 반복 공백문자 출력 for 별수 만큼 반복 별 출력 --
C 언어에서는 문자하나를 찍을 수 있는 putchar(문자) 함수를 사용해 별 하나씩 찍는다. 줄바꿈 문자는 '\n' 을 찍어주면 줄바꿈이 된다. putchar 함수는 단순하고 속도도 빠르다.
#include <stdio.h>
int main() {
int i, j, n;
scanf("%d", &n); // 별의 줄수를 입력받아 정수로 변환 후 n에 대입
for(i = 0; i < n; i++) { // 주어진 개수 만큼 반복
for(j = 0; j < n - i -1; j++) { // 별개수 빠진 만큼 빈공백 출력
putchar(' '); //공백문자 출력
}
for(j = 0; j < i + 1; j++) { // 자리수 만큼 별을 찍기 위해 반복
putchar('*'); // 별 한글자 출력
}
putchar('\n'); // 별 한줄을 다 찍었으니 줄바꿈 출력
}
return 0;
}