zoukankan      html  css  js  c++  java
  • 数据结构之栈的进制转换(10进制-- > 8进制 )

    #include<iostream>
    #include<stdlib.h>
    #include<malloc.h>
    #include<stdio.h>
    #define max 100
    using namespace std;
    typedef struct
    {
    int stack[max];
    int top;
    }seqstack;
    void init(seqstack *l)
    {
    l->top=-1;
    }
    int empty(seqstack s)
    {
    if(s.top==-1)
    {
    printf("栈空");
    return 1;
    }

    else
    {
    printf("栈没空");
    return 0;
    }
    }
    int top(seqstack l,int *s)
    {
    if(l.top<0)
    {
    printf("栈已空! ");
    return 0;
    }
    {
    *s=l.stack[l.top];
    return 1;
    }
    }

    int push(seqstack *s,int x)
    {
    if(s->top>=max)
    {
    printf("栈已满,不能进栈! ");
    return 0;
    }
    else
    {
    s->top++;
    s->stack[s->top]=x;
    return 1;
    }
    }

    int pop(seqstack *s,int e)
    {
    if(s->top==-1)
    {
    printf("栈已空");
    return 0;
    }
    else
    {
    e=s->stack[s->top];
    printf("%d",e);
    s->top--;
    return 1;
    }
    }
    void dis(seqstack l)
    {
    while(l.top>-1)
    {
    printf("%d ",l.stack[l.top]);
    l.top--;
    }
    printf(" ");
    }


    int main()
    {
    seqstack l;
    int e;int n;int x;
    printf("请输入一个数:");
    scanf("%d",&n);
    //seqstack *s
    //s=(seqstack*)malloc(sizeof(seqstack))
    //必须要动态分配否则指针用完被释放
    //
    //使用指针只是复制一份形参 在被调函数运行完就会失效
    //但是取址是址传递 改变了值
    init(&l);
    while(n>0)
    {
    e=n%8;
    push(&l,e);
    n=n/8;
    }
    while(l.top>=0)
    {
    pop(&l,x);

    }
    return 0;
    }

    //测试数据3467

  • 相关阅读:
    idea+maven使用
    MySQL数据库一个字段对应多个值得模糊查询
    什么时候用接口?什么时候用抽象类?
    线程的死锁和死锁解决的实际案例
    idea 实用插件
    linux查看日志报错
    mysql日期模糊查找的方法
    mysql 日期函数
    win10安装sonarqube
    docker中mysql数据库导出部分数据
  • 原文地址:https://www.cnblogs.com/mykonons/p/6298402.html
Copyright © 2011-2022 走看看