1、输入字符串 3、反转字符串,并赋给字符串数组A 2、循环检测数组A,依次检测1每个字符 5、判断当前检测的字符,如果属于ABCDEF,则依次把ABCDEF 转换为11...16,否则不做任何操作 6、累加,当前循环次数的16次方乘以当前字符的数值大小。7、输出总累加值就是10进制整数 ...
int convert(char *s,int base) //base表示进制,为8,10.16;{ int len;int sum = 0;int d;while(*s){ if(base == 16){ if(*s >'A'){ d = *s - 'A' + 10;} } else { d= *s -'0';} sum = sum *base + d;s++;} return sum;} ...
ch);// 十进制;八进制以0开始;十六进制以0x或0X开始if(ch[0]=='0'&&(ch[1]=='x'||ch[1]=='X'))num=hexadecimal(ch+2);else if(ch[0]=='0')num=octal(ch+1);