求助
八进制和十六进制怎样转换成十进制 ----------------解决方案--------------------------------------------------------
任何进制的数转换成十进制都是一个公式
X进制的数ABCD转换为十进制数就是
D*X^0+C*X^1+B*X^2+A*X^3
//最低位是0次方,前面的次数依次上升
比如8进制数4235转换为十进制数就是
5*8^0+3*8^1+2*8^2+4*8^3
----------------解决方案--------------------------------------------------------
其实不只是转换成十进制,
任何一种进制的转换,
利用的原理都一样,
2楼怎么救不干脆写的更透彻些。
还有如果可以的话把大的数字放前面。
这样更容易理解。
----------------解决方案--------------------------------------------------------
自己可以写个16转10进制的
#include"stdio.h"#include "math.h"
int main(void)
{
int num1,i=0,j,temp;
double num2=0;
printf("请输入一个八进制的数:");
scanf("%d",&num1);
while(num1!=0)
{
temp=num1%10;
num2=num2+temp*pow(8.0,i++);
num1=num1/10;
}
printf("八进制%d转换成十进制的数是:%.0lf\n",num1,num2);
return 0;
}
给你留个思考题,你可以考虑一下八进制转十六进制如何转换。
----------------解决方案--------------------------------------------------------