Escribir una función en lenguaje C, ingresar hexadecimal y generar el decimal correspondiente
1 El código es el siguiente: #include
#include
#include
#include
#define?N?80
int?char2int(char?ch){
si ?(isdigit (ch))
return?ch?-?'0';
if?(isalpha(tolower(ch)))
return ?tolower( ch)?-?'a'?+?10;
}
int?change(char?x[],?int?n)
{
int?y?=?0;
para?(int?i?=?0;?i?
y?+=?char2int(x[i])?*?pow(16.0,?n?-?i?-?1);
return?y;
}
void?main()
{
char?a[N];
puts("Ingrese un Número de sistema hexadecimal (solo puede contener 0-9, a-f, A-F): ");
scanf("%s",?a);
int?b?=? change (a,?strlen(a));
printf("El número decimal correspondiente es:?%d\n",?b);
getchar();
getchar();
}
2 Resultados de la operación
Espero que te sea útil~