문제 설명
어떤 10진수 n이 주어지면 2진수로 변환해서 출력하시오.
예)
10 -----> 1010
0 -----> 0
1 -----> 1
2 -----> 10
1024 -----> 10000000000
입력
10진수 정수 n이 입력된다.
(n은 21억이하의 임의의 수이다.)
출력
2진수로 변환해서 출력한다.
입력 예시
7
출력 예시
111
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#include <stdio.h>
int main()
{
int arr[255] = { 0 }, i = 0, n;
scanf("%d", &n); // n 입력받음
if (n == 0){
printf("0");
} //0입력받으면 0출력
while (n > 0){
arr[i] = n % 2; //나머지를 배열에 저장
n = n / 2; //몫을 n에 저장
i++; //배열 채워가기 위해 i++
}
for (int j = i - 1; j >= 0; j--)
printf("%d", arr[j]); //2진수는 거꾸로 출력해야함
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
이 문제를 풀면서 중요한 포인트는 2진수를 구하는 방법을 아는지 모르는지 같다.
학교에서 2진수를 구하는 것은 많이 연습하였기에 풀 수 있었다.
'CodeUp' 카테고리의 다른 글
C언어)CodeUp 1405 [숫자 로테이션] (0) | 2019.09.22 |
---|---|
C언어)CodeUp 1425 [자리배치] (0) | 2019.09.22 |
C언어)CodeUp 1440 [비교] (0) | 2019.09.16 |
C언어&파이썬)CodeUp 1010 (0) | 2019.09.13 |
C언어&파이썬)CodeUp 1007 문제풀이 (0) | 2019.09.13 |