int convertOctalToDecimal(int octal)
int main()
{
int octal
printf("输入一个八进制数:")
scanf("%d", &octal)
printf("八进制数%d转换成十进制数%d.\n", octal, convertOctalToDecimal(octal))
return 0
}
int convertOctalToDecimal(int octal)
{
int decimal = 0, r, i = 0
while (octal != 0)
{
r = octal % 10
octal = octal / 10
decimal = decimal + r * pow(8, i)
i++
}
return (decimal)
}
//运行结果:
先将十进制数转换为二进制数,然后就是从低位开始,每三位对应一位,不足补0比如-32的代码是10101110(随便写的)
转换之后就是256,前面一个不足三位,在最前面补0
010
101
110
2
5
6