【问题描述】对于输入的任意一个非负十进制整数,打印输出与其等值的八进制数
【输入形式】非负十进制整数
【输出形式】相应十进制整数转换后的八进制正整数,若输入不符合要求,提示错误,重新输入
【样例输入】5548
【样例输出】12654
//十进制到八进制的转换
#include<iostream>
#include<vector>
using namespace std;
int main()
{
int i,t=0;
cin>>i;
vector<int>nums;
if(i>0)
{
for(;i>0;i/=8)//每次都除8
{
t=i%8;
nums.push_back(t);//压入余数
}
}
else
{
cout<<"0";
}
for(int time=nums.size()-1;time>=0;--time)
{
cout<<nums[time];//输出除以8的余数
}
}
更多推荐
C++十进制到八进制的转换
发布评论