zptzdlzc

导航

c++十进制转八进制(栈的用法)

#include<iostream>
#include<stack>
using namespace std;
int main()
{
    int n;
    stack<int>stac;
    cout << "请输入一个数字:" << endl;
    cin >> n;
    while (n!=0)
    {
        //每次求余后把余数放进栈里
        stac.push(n % 8);
        n = n / 8;//得到新的n值
    }
    cout << "十进制数转八进制后为:" << endl;
    while (!stac.empty())
    {
        //取栈顶元素
        cout << stac.top();//不需要加endl,为了让数连贯起来
        stac.pop();//删除栈顶元素
    }
    cout << endl;
    system("pause");
    return 0;
}

分析:栈的一大特点就是先进后出,刚好符合转进制的特点。

posted on 2022-05-11 17:20  zdlzc  阅读(492)  评论(0编辑  收藏  举报