#include <stdio.h>
int main()
{
// para loop "for"
int i;
// area de entrada
char hex[3];
// area de saida
char text[10];
// variaveis de conveniencia
char ch, high, low;
// constante caracter usas aspas simples (apostrofo), e '\xNN'
hex[0] = '\x69';
hex[1] = '\x20';
hex[2] = '\x31';
// trata todos os caracteres da area de entrada
for (i = 0; i < 3; i++)
{
// pega um caracter da area de entrada
ch = hex[i];
// converte meio byte 'a esquerda para caracter hexa visivel
high = ch >> 4; // desloca 4 bits 'a direita
high &= 0x0F; // zera os 4 bits da esquerda
if (high > 9) high += 7; // se for maior que 9, ajusta o valor para resultar numa letra
high = high + 0x30; // transforma em caracter visivel
// repete para meio byte 'a direita (nao precisa deslocar 4 bits)
low = ch & 0x0F;
if (low > 9) low += 7;
low = low + 0x30;
// transfere para area de saida
text[2*i] = high;
text[2*i+1] = low;
}
text[2*i] = 0; // para delimitar string
printf("The value of decimalNumber is %s\n",text
); }
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgbWFpbigpCnsKICAgIC8vIHBhcmEgbG9vcCAiZm9yIgogICAgaW50IGk7CgogICAgLy8gYXJlYSBkZSBlbnRyYWRhCiAgICBjaGFyIGhleFszXTsKCiAgICAvLyBhcmVhIGRlIHNhaWRhCiAgICBjaGFyIHRleHRbMTBdOwoKICAgIC8vIHZhcmlhdmVpcyBkZSBjb252ZW5pZW5jaWEKICAgIGNoYXIgY2gsIGhpZ2gsIGxvdzsKCiAgICAvLyBjb25zdGFudGUgY2FyYWN0ZXIgdXNhcyBhc3BhcyBzaW1wbGVzIChhcG9zdHJvZm8pLCBlICdceE5OJwogICAgaGV4WzBdID0gJ1x4NjknOwogICAgaGV4WzFdID0gJ1x4MjAnOwogICAgaGV4WzJdID0gJ1x4MzEnOwoKICAgIC8vIHRyYXRhIHRvZG9zIG9zIGNhcmFjdGVyZXMgZGEgYXJlYSBkZSBlbnRyYWRhCiAgICBmb3IgKGkgPSAwOyBpIDwgMzsgaSsrKQogICAgewogICAgICAgLy8gcGVnYSB1bSBjYXJhY3RlciBkYSBhcmVhIGRlIGVudHJhZGEKICAgICAgIGNoID0gaGV4W2ldOwoKICAgICAgIC8vIGNvbnZlcnRlIG1laW8gYnl0ZSAnYSBlc3F1ZXJkYSBwYXJhIGNhcmFjdGVyIGhleGEgdmlzaXZlbAogICAgICAgaGlnaCA9IGNoID4+IDQ7ICAgICAgICAvLyBkZXNsb2NhIDQgYml0cyAnYSBkaXJlaXRhCiAgICAgICBoaWdoICY9IDB4MEY7ICAgICAgICAgIC8vIHplcmEgb3MgNCBiaXRzIGRhIGVzcXVlcmRhCiAgICAgICBpZiAoaGlnaCA+IDkpIGhpZ2ggKz0gNzsgLy8gc2UgZm9yIG1haW9yIHF1ZSA5LCBhanVzdGEgbyB2YWxvciBwYXJhIHJlc3VsdGFyIG51bWEgbGV0cmEKICAgICAgIGhpZ2ggPSBoaWdoICsgMHgzMDsgLy8gdHJhbnNmb3JtYSBlbSBjYXJhY3RlciB2aXNpdmVsCgogICAgICAgLy8gcmVwZXRlIHBhcmEgbWVpbyBieXRlICdhIGRpcmVpdGEgKG5hbyBwcmVjaXNhIGRlc2xvY2FyIDQgYml0cykKICAgICAgIGxvdyA9IGNoICYgMHgwRjsKICAgICAgIGlmIChsb3cgPiA5KSBsb3cgKz0gNzsKICAgICAgIGxvdyA9IGxvdyArIDB4MzA7CgogICAgICAgLy8gdHJhbnNmZXJlIHBhcmEgYXJlYSBkZSBzYWlkYSAgICAgICAgICAgIAogICAgICAgdGV4dFsyKmldID0gaGlnaDsKICAgICAgIHRleHRbMippKzFdID0gbG93OwogICAgfQoKICAgIHRleHRbMippXSA9IDA7IC8vIHBhcmEgZGVsaW1pdGFyIHN0cmluZwoKICAgIHByaW50ZigiVGhlIHZhbHVlIG9mIGRlY2ltYWxOdW1iZXIgaXMgJXNcbiIsdGV4dCk7Cn0=