Red de conocimiento informático - Material del sitio web - Cómo convertir un número hexadecimal en un número decimal, escrito en lenguaje c

Cómo convertir un número hexadecimal en un número decimal, escrito en lenguaje c

El principio de convertir un número hexadecimal en un número decimal:

Un determinado número hexadecimal tiene ***n dígitos y el enésimo dígito está representado por Xn. El número decimal convertido se representa como Y.

Y = Xn×16^0 +?Xn-1×16^1 +?Xn-2×16^2 + …… +?X1×16^n-1. #include?

#include?

#include?

/*?Cualquier entrada ¿Número de sistema a número decimal?*/

/*?char?*valor?:?Otro número base?*/

/*?int?*resultado?:?Conversión El número decimal después?*/

/*?int?radix?:?La base a convertir*/

void?others2Decimal?(char?*value,?int? * resultado,?int?radix)?{?

int?digit,i,j;

*resultado?=?0;

para?( i =strlen(valor)-1,j=0;?i>=0;?i--,j++)?{

if?(valor[i]>='0'?&&? valor [i]<='9')

dígito?=?valor[i]-'0';

si?(valor[i]>='a'? && ?valor[i]<='z')

dígito?=?valor[i]-'a'+10;

si?(valor[i]>= ' A'?&&?valor[i]<='Z')

dígito?=?valor[i]-'A'+10;

*resultado?+= ? dígito*pow(radix,j);

}

}

int?main?(void)?{

char ? *valor;

int?radix=16,resultado;

printf?("Ingrese un número hexadecimal:");

obtiene?( valor) ;

putchar?('\n');

pone?("===================== == ===========================================\n");

printf?("Resultado de conversión decimal:");?

otros2Decimal?(valor,&resultado,radix);

printf?("%d \n", resultado);

putchar?('\n');

getch?();?/*Persistencia de pantalla*/

return?0;

}

Ejecutar resultados