解题思路:先转换为十进制,然后再输出,注意细节即可。
参考代码:
#include <stdio.h> int main() { char a[4]; int b[3],c; scanf("%s",a); for(int i=0;a[i];i++) { if(a[i]>='A' && a[i]<='F') //A-F之间 b[i]=10+a[i]-'A'; else //0-9之间 b[i]=a[i]-'0'; } c=b[0]*16*16+b[1]*16+b[2]; //转换为十进制 printf("Hex: 0x%s\n",a); // 原样输出 printf("Decimal: %d\n",c); //输出十进制 printf("Octal: %04o\n",c); //输出八进制 return 0; }
0.0分
2 人评分