2-1. *로 직각 삼각형 출력

문제설명

정수 n을 입력받아 다음과 같은 직각삼각형을 출력하시오.

예 (n = 5)
*
**
***
****
*****

목표

  • 중첩 반복문 기본
  • 줄과 출력 개수 관계 이해

요구사항

  • n 입력
  • i번째 줄에 별 i개 출력

출력예시

입력: 4
*
**
***
****

 

코드예시

더보기
#include <stdio.h>

int main(void)
{
    int n;
    int i, j;

    printf("입력: ");
    scanf("%d", &n);

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

        printf("\n");
    }

    return 0;
}
 

 

2-2. *로 정삼각형 출력

 

문제설명

정수 n을 입력받아 다음과 같은 정삼각형을 출력하시오.

예 (n = 4)
   *
  ***
 *****
*******

 

목표

  • 공백 + 별 출력
  • 반복문 2개 사용
  • 규칙 찾기

요구사항

  • 공백 n-i
  • 별 2*i-1

출력예시

입력: 4
   *
  ***
 *****
*******

 

코드예시

더보기
#include <stdio.h>

int main(void)
{
    int n;
    int i, j;

    printf("입력: ");
    scanf("%d", &n);

    for (i = 1; i <= n; i++)
    {
        for (j = 1; j <= n - i; j++)
        {
            printf(" ");
        }

        for (j = 1; j <= 2 * i - 1; j++)
        {
            printf("*");
        }

        printf("\n");
    }

    return 0;
}
 

2-3. *로 다이아몬드 출력

문제설명

정수 n을 입력받아 다음과 같은 다이아몬드를 출력하시오.

예 (n = 4)
   *
  ***
 *****
*******
 *****
  ***
   *
 

목표

  • 반복문을 두 번 사용
  • 위 삼각형 + 아래 삼각형
  • 반복문 분할

요구사항

  • 위쪽 삼각형
  • 아래쪽 삼각형
  • 중첩 반복문 사용

출력예시

입력: 5
    *
   ***
  *****
 *******
*********
 *******
  *****
   ***
    *

 

코드예시

더보기

 

#include <stdio.h>

int main(void)
{
    int n;
    int i, j;

    printf("입력: ");
    scanf("%d", &n);

    // 위쪽
    for (i = 1; i <= n; i++)
    {
        for (j = 1; j <= n - i; j++)
        {
            printf(" ");
        }

        for (j = 1; j <= 2 * i - 1; j++)
        {
            printf("*");
        }

        printf("\n");
    }

    // 아래쪽
    for (i = n - 1; i >= 1; i--)
    {
        for (j = 1; j <= n - i; j++)
        {
            printf(" ");
        }

        for (j = 1; j <= 2 * i - 1; j++)
        {
            printf("*");
        }

        printf("\n");
    }

    return 0;
}

 

+ Recent posts