//多组输入//输入字符串类型的十六进制数据 0x0A//输出对应的十进制 10#include <stdio.h>#include <string.h>#include <math.h>int main(){ char str_0x[100]={0}; //字符类型多组输入间隔 while(fgets(str_0x, sizeof(str_0x), stdin)) { int bit_num = 0; int result = 0; //获取有效位数 bit_num = strlen(str_0x)-3; //将字母对应arsc码顺接在数字后便于统一处理 for(int i = 0;i<bit_num;i++) { if(str_0x[i+2]>=65&&str_0x[i+2]<=70) { str_0x[i+2]-=7; } } //统一将字符数字转成实际数字大小并套用进制转换公式 for(int i = 0;i<bit_num;i++) { result+=(str_0x[(bit_num+1)-i]-48)*pow(16,i); } //******************************************************************** //输出时注意打印换行符,否则报错 //******************************************************************** printf("%d\n",result); }}