[C언어 코드업 문제풀이] CodeUp 1025 : [기초-입출력] 정수 1개 입력받아 나누어 출력하기(설명)

코드업 1025번 정수 1개 입력받아 나누어 출력하기 문제풀이 해답입니다.

 

1. 문제 설명

 

다섯 자리의 정수 1개를 입력받아 각 자리별로 나누어 출력한다.

참고
scanf("%1d%1d%1d%1d%1d", &a, &b, &c, &d, &e);
를 사용하면 1개의 숫자로 각각 구분되어 저장된다.

예시
읽어들인 값을 적당히 바꿔 출력하기 위해서

printf("[%d]", a*10000);

과 같은 방법도 가능하다.

 

2. 입력

 

다섯 자리로 이루어진 1개의 정수를 입력받는다.
(단, 10,000 <= 입력받는 수 <= 99,999 )

 

3. 출력

 

각 자리의 숫자를 분리해 한 줄에 하나씩 [ ] 속에 넣어 출력한다.

 

4. 입력 예시

 

75254

 

5. 출력 예시

 

[70000]

[5000]

[200]

[50]

[4]

 

6. 문제 풀이

 

참고의 scanf("%1d%1d%1d%1d%1d", &a, &b, &c, &d, &e);처럼 하나의 변수가 아닌 5자리라는 입력이 정해져 있으므로 자리마다 변수를 만들어 5개의 변수로 입력을 받습니다.

 

#include<stdio.h>
 
int main(void)
{
    int num1, num2, num3, num4, num5;
    scanf("%1d%1d%1d%1d%1d",&num1, &num2, &num3, &num4, &num5);
    printf("[%d]\n", num1 * 10000);
    printf("[%d]\n", num2 * 1000);
    printf("[%d]\n", num3 * 100);
    printf("[%d]\n", num4 * 10);
    printf("[%d]", num5 );
    return 0;
}
 

 

입력이 75254라면 출력은

 

[70000]

[5000]

[200]

[50]

[4]

으로 이루어져야 하므로 각 자리수에 맞는 숫자를 곱하여 출력해줍니다.

댓글()