在计算机系统中,八进制数字以八进制数字表示,而十进制数字以十进制数字表示。八进制数以8为底,十进制数以10为底。
十进制数及其对应的八进制数的示例如下。小数八进制数810
70106
2531
77
将十进制数转换为八进制的程序如下。
示例#include
usingnamespacestd;
voidDecimalToOctal(intdecimalNum){
intoctalNum=0,placeValue=1;
intdNo=decimalNum;
while(decimalNum!=0){
octalNum+=(decimalNum%8)*placeValue;
decimalNum/=8;
placeValue*=10;
}
cout<
}
intmain(){
DecimalToOctal(70);
return0;
}
输出结果Octalformofdecimalnumber70is106
在上面的程序中,函数DecimalToOctal将十进制数转换为八进制数。在函数DecimalToOctal中,最初将变量octalNum初始化为零。变量placeValue表示数字在数字中的位置。使用while循环可找到octalNum的值。
对于while循环的每次迭代,十进制Num除以8,其余乘以placeValue。这被添加到octalNum的先前值。另外,decimalNum除以8,然后商回存储。placeValue乘以10。
证明这一点的代码片段如下。while(decimalNum!=0){
octalNum+=(decimalNum%8)*placeValue;
decimalNum/=8;
placeValue*=10;
}
获得八进制值(即octalNum)后,将显示该值。这在下面给出-cout<
该main()函数仅包含DecimalToOctal()具有所需值的函数调用。下面的代码片段对此进行了演示。DecimalToOctal(70);