English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial Básico do C

Controle de Fluxo do C

Função do C

Array do C

Ponteiro do C

String do C

Estrutura do C

Arquivo do C

Outros do C

Manual de Referência do C

Programa do C para converter números binários e decimais

大全 de programação do C

Neste exemplo,você aprenderá a converter números binários e decimais usando funções definidas pelo usuário.

Para entender este exemplo,você deve saber o seguinteProgramação em CTema:

Programa para converter binário para decimal

#include <math.h>
#include <stdio.h>
int convert(long long n);
int main() {
    long long n;
    printf("digite um número binário: ");
    scanf("%lld", &n);
    printf("%lld(binário)= %d(decimalo)", n, convert(n));
    return 0;
}
int convert(long long n) {
    int dec = 0, i = 0, resto;
    while (n != 0) {
        resto = n % 10;
        n /= 10;
        dec += rem * pow(2, i);
        ++i;
    }
    return dec;
}

Resultados de saída

digite um número binário: 110110111
110110111(binário) =  439(decimal)

Programa para converter decimal para binário

#include <math.h>
#include <stdio.h>
long long convert(int n);
int main() {
    int n;
    printf("digite um número decimal: ");
    scanf("%d", &n);
    printf("%d(decimalo)= %lld(binário)", n, convert(n));
    return 0;
}
long long convert(int n) {
    long long bin = 0;
    int resto, i = 1, step = 1;
    while (n != 0) {
        resto = n % 2;
        printf("passo %d: %d/2, resto = %d, quociente = %d\n", step++, n, rem, n / 2);
        n /= 2;
        bin += rem * i;
        i *= 10;
    }
    return bin;
}

Resultados de saída

Digite um número decimal: 29
Passo 1: 29/2, Resto = 1, 商 = 14
Passo 2: 14/2, Resto = 0, 商 = 7
Passo 3: 7/2, Resto = 1, 商 = 3
Passo 4: 3/2, Resto = 1, 商 = 1
Passo 5: 1/2, Resto = 1, 商 = 0
29(Decimal) = 11101(Binário)

大全 de programação do C