Description du problème
Entrez une chaîne de nombres hexadécimaux positifs avec pas plus de 8 chiffres à partir du clavier, convertissez-la en nombre décimal positif et sortez-la.
Remarque: 10 ~ 15 en nombres hexadécimaux sont représentés respectivement par les lettres majuscules anglaises A, B, C, D, E et F.Exemple d'entrée
FFFF
Exemple de sortie
65535
#include<bits/stdc++.h>
using namespace std;
int main()
{
char a[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
char b[10];
int k=0,i;
int n;
scanf("%d",&n);
if(n==0)
printf("0");
else
{
while(n)
{
b[k++]=a[n%16];
n=n/16;
}
for(i=k-1;i>=0;i--)
printf("%c",b[i]);
}
}
Il sera beaucoup plus rapide d' imprimer directement le tableau de la décimale à l'hexadécimal , de sorte que vous puissiez à nouveau enregistrer les correspondants.