안경잡이 구루루

백준 2523 ( 별 찍기 -13 ) [ C programming ] 본문

C언어(C programming)/문제풀이(백준,BaekJoon)

백준 2523 ( 별 찍기 -13 ) [ C programming ]

구루루(gururu) 2020. 5. 30. 09:55
반응형


나:

#include <stdio.h>
int main() {
	int N;
	scanf("%d", &N);
	for (int i = 1; i <= N; i++) {
		for (int j = 0; j < i; j++) {
			printf("*");
		}
		printf("\n");
	}
	for (int k = N-1; k >= 1; k--) {
		for (int l = 0; l < k; l++) {
			printf("*");
		}
		printf("\n");
	}
	return 0;
}

완성된 코드는 위와 같다.

 

#include <stdio.h>
int main() {
	int N;
	scanf("%d", &N);

 

출력할 총 별( * ) 개수의 자료형을 선언하고 scanf로 사용자 입력값을 받는다

 

	for (int i = 1; i <= N; i++) {
		for (int j = 0; j < i; j++) {
			printf("*");
		}
		printf("\n");
	}

출력할 부분을 크게 두부분으로 나누었다.

하나는 1개부터 차례대로 1씩 증가하는 별(*)의 출력과 다른 하나는 1씩 감소하는 별(*)의 출력으로 나누었다.

위는 1씩 증가하는 별의 출력으로 for 중첩반복문을 이용해 출력 한줄마다 내부반복문을 1회씩 늘려 별의 출력이 증가하도록 만들었다.

이때 줄바꿈 제어코드 \n 은 한줄의 출력이 다 끝난후 다음줄로 넘기는 방식을 이용했다.

 

	for (int k = N-1; k >= 1; k--) {
		for (int l = 0; l < k; l++) {
			printf("*");
		}
		printf("\n");
	}
	return 0;
}

위는 별이 1개씩 감소하는 것으로 총 출력할 별의 개수 N-1개부터 1까지 출력하는 방식이다.

1씩 별의 개수가 증가할때와 마찬가지로 for 중첩반복문을 이용해 출력 한줄마다 내부반복문을 1회씩 줄여 별의 출력이 감소하도록 만들었다.

이때도 줄바꿈 제어코드 \n 은 한줄의 출력이 다 끝난후 다음줄로 넘기는 방식을 이용했다.

반응형