728x90
반응형

 

 

문제

 

예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.

 

입력

 

첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.

 

출력

 

첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다.

 

 

 

 

 

728x90

 

 소스코드

 

#include <stdio.h>
int main()
{
  int N,save,cnt=0;
  scanf("%d",&N);
  if(N==1)
  {
    printf("*\n");
  }
  else
  {
    save=N;
    while(1)
    {
      for(int i=cnt;i>0;i--)
      {
        printf(" ");
      }
      for(int j=0;j<N*2-1;j++)
      {
        printf("*");
      }
      N--;
      if(N==0)
      {
        N+=2;
        cnt--;
        printf("\n");
        break;
      }
      cnt++;
      printf("\n");
    }
    while(1)
    {
      for(int i=cnt;i>0;i--)
      {
        printf(" ");
      }
      for(int j=0;j<N*2-1;j++)
      {
        printf("*");
      }
      N++;
      if(N>save)
      {
        break;
      }
      cnt--;
      printf("\n");
    }
    printf("\n");
  }
}

 

 

설명

 

이전 문제에서 공백을 출력해주는 부분에 별을 출력하고, 별을 출력하는 부분에 공백을 출력했다.

추가로 입력값이 1이라면 별 하나만 출력하고 프로그램을 종료하도록 했다.

https://www.acmicpc.net/problem/2446

 

2446번: 별 찍기 - 9

첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다.

www.acmicpc.net

728x90
반응형

'백준 > C' 카테고리의 다른 글

[ C ] 백준 2445번 별 찍기 - 8  (0) 2022.03.21
[ C ] 백준 2444번 별 찍기 - 7  (0) 2022.03.21
[ C ] 백준 2443번 별 찍기 - 6  (0) 2022.03.21
[ C ] 백준 2442번 별 찍기 - 5  (0) 2022.03.21
[ C ] 백준 2441번 별 찍기 - 4  (0) 2021.01.14
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기