[C언어] 10진수를 2진수로 변환하는 방법
ET의 공부/C언어2020. 4. 9. 21:04
안녕하세요 오늘은 C언어에서 10진수를 2진수로 변환하는 방법에 대해 포스팅하겠습니다.
1. 10진수를 2진수로 변환하기
변환하려는 숫자를 2로 나누고 그 나머지도 2로 나누는 연산을 반복합니다.( 입력 값이 0보다 작거나 같아질 때까지).
얻은 나머지 값을 역으로 출력합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
#include <stdio.h>
#include <stdlib.h>
void decimal_to_binary(int n)
{
int bin_num[1000];
int i = 0;
while (n > 0) {
bin_num[i] = n % 2;
n = n / 2;
i++;
}
for (int j = i - 1; j >= 0; j--)
printf("%d",bin_num[j]);
printf("\n");
}
int main()
{
int n = 13;
printf("십진수 %d 의 변환된 이진수: ",n);
decimal_to_binary(n);
return 0;
}
|
while (n > 0) {
bin_num[i] = n % 2;
n = n / 2;
i++;
}
로 변환하려는 값 n이 0보다 작거나 같아질 때 까지 /2 연산을 반복해줍니다.
그 나머지를 배열에 넣고 반대로 출력해주면 이진수를 얻을 수 있습니다.
'ET의 공부 > C언어' 카테고리의 다른 글
[C언어] 윤년을 판단하는 방법 (0) | 2020.04.12 |
---|---|
[C언어] 두 개의 분수를 정수형으로 더하는 방법 (0) | 2020.04.09 |
[C언어] 두 배열을 정렬된 형태로 합치는 2가지 방법 (0) | 2020.04.05 |
[C언어] 배열의 두 번째로 작은 요소를 찾는 3가지 방법 (0) | 2020.04.05 |
[C언어]조건문 if와 else 사용하기 (0) | 2019.12.19 |
댓글()