#include <stdio.h>
void inputChar(char *str)
{
printf("input array char <100: "); }
void revers(char *A)
{
int j;
for (j = 0; A[j] != '\0'; j++);
j--;
for (int i = 0; i <j; i++, j--)
{
char temp = A[i];
A[i] = A[j];
A[j] = temp;
}
}
int charToDecInt(char *A)
{
int summ = 0;
for (int i = 0; A[i] != '\0'; i++)
{
if ('0' <= A[i] && A[i] <= '9')
{
summ *= 10;
summ += A[i] - '0';
}
else
{
summ += A[i]-'A'+10;
}
}
return summ;
}
void decIntTohexString(int a, char *A)
{
int j = 0;
while (a != 0)
{
int r = a % 16;
if (r >= 1 && r <= 9)
{
r += '0';
}
else
{
r += 'A'- 10;
}
A[j++] = r+A[j];
a /= 16;
}
A[j] = '\0';
revers(A);
}
void display()
{
const int N = 100;
char A[100] = {};
char B[100] = {};
inputChar(A);
int a = charToDecInt(A);
decIntTohexString(a, B);
}
int main()
{
display();
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgp2b2lkIGlucHV0Q2hhcihjaGFyICpzdHIpCnsKICAgIHByaW50ZigiaW5wdXQgYXJyYXkgY2hhciA8MTAwOiAiKTsKICAgIHNjYW5mKCIlcyIsIHN0cik7Cn0Kdm9pZCByZXZlcnMoY2hhciAqQSkKewogICAgaW50IGo7CiAgICBmb3IgKGogPSAwOyBBW2pdICE9ICdcMCc7IGorKyk7CiAgICBqLS07CiAgICBmb3IgKGludCBpID0gMDsgaSA8ajsgaSsrLCBqLS0pCiAgICB7CiAgICAgICAgY2hhciB0ZW1wID0gQVtpXTsKICAgICAgICBBW2ldID0gQVtqXTsKICAgICAgICBBW2pdID0gdGVtcDsKICAgIH0KfQppbnQgY2hhclRvRGVjSW50KGNoYXIgKkEpCnsKICAgIGludCBzdW1tID0gMDsKICAgIGZvciAoaW50IGkgPSAwOyBBW2ldICE9ICdcMCc7IGkrKykKICAgIHsgICAgICAgIAogICAgICAgIGlmICgnMCcgPD0gQVtpXSAmJiBBW2ldIDw9ICc5JykKICAgICAgICB7CiAgICAgICAgICAgIHN1bW0gKj0gMTA7CiAgICAgICAgICAgIHN1bW0gKz0gQVtpXSAtICcwJzsKICAgICAgICB9CiAgICAgICAgZWxzZQogICAgICAgIHsKICAgICAgICAgICAgc3VtbSArPSBBW2ldLSdBJysxMDsKICAgICAgICB9CgogICAgfQogICAgcmV0dXJuIHN1bW07Cn0Kdm9pZCBkZWNJbnRUb2hleFN0cmluZyhpbnQgYSwgY2hhciAqQSkKewogICAgaW50IGogPSAwOwogICAgd2hpbGUgKGEgIT0gMCkKICAgIHsKICAgICAgICBpbnQgciA9IGEgJSAxNjsKICAgICAgICBpZiAociA+PSAxICYmIHIgPD0gOSkKICAgICAgICB7CiAgICAgICAgICAgIHIgKz0gJzAnOwogICAgICAgIH0KICAgICAgICBlbHNlIAogICAgICAgIHsKICAgICAgICAgICAgciArPSAnQSctIDEwOwogICAgICAgIH0KICAgICAgICBBW2orK10gPSByK0Fbal07CiAgICAgICAgYSAvPSAxNjsKICAgIH0KICAgIEFbal0gPSAnXDAnOwogICAgcmV2ZXJzKEEpOwp9CnZvaWQgZGlzcGxheSgpCnsKICAgIGNvbnN0IGludCBOID0gMTAwOwogICAgY2hhciBBWzEwMF0gPSB7fTsKICAgIGNoYXIgQlsxMDBdID0ge307CiAgICBpbnB1dENoYXIoQSk7CiAgICBpbnQgYSA9IGNoYXJUb0RlY0ludChBKTsKICAgIGRlY0ludFRvaGV4U3RyaW5nKGEsIEIpOwogICAgcHJpbnRmKCJoZXhDaGFyID0gJXNcbiIsIEIpOwp9CmludCBtYWluKCkKewogICAgZGlzcGxheSgpOwogICAgcmV0dXJuIDA7Cn0=