[C언어] 2진수를 10진수로 변환하는 방법

ET의 공부/C언어|2020. 12. 16. 10:28

C언어에서 2진수를 10진수로 변환하는 방법입니다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <math.h>
#include <stdio.h>
int convert(long long n);
int main() {
    long long n;
    printf("이진수 입력: ");
    scanf("%lld"&n);
    printf("%lld  = %d \n", n, convert(n));
    return 0;
}
 
int convert(long long n) {
    int dec = 0, i = 0, rem;
    while (n != 0) {
        rem = n % 10;
        n /= 10;
        dec += rem * pow(2, i);
        ++i;
    }
    return dec;
}
 

 

 

이진법은 두 개의 숫자를 이용하는 체계입니다. 일반적으로 0과1로 구성됩니다.

댓글()