• 把十进制整数转换为r(r=2)进制输出(顺序栈实现)


    上周的第二个作业补上~~

    上周的要求:

    1.给出顺序栈的存储结构定义。
    2.完成顺序栈的基本操作函数。
    1)      初始化顺序栈
    2)      实现入栈和出栈操作
    3)      实现取栈顶元素和判空操作
    把十进制整数转换为r(r=2)进制输出
    3.编写主函数实现基本操作函数功能,并设置测试数据,测试合法和非法数据的输出结果。
    4.程序调试运行并保存输出结果。
    5.整理并提交实验作业。
    #include <cstdio>
    #include <cstring>
    #define Stack_Size 50
    
    typedef struct
    {
        int ll[Stack_Size];
        int top;
    }SeqStack;
    
    int IsEmpty(SeqStack *S)//栈判空
    {
        return S->top == -1;
    }
    
    void Push(SeqStack * S,int x)//进栈
    {
        S->top++;
        S->ll[S->top]=x;
    }
    
    void Pop(SeqStack * S,int *x)//出栈
    {
        *x=S->ll[S->top];
        S->top--;
    }
    
    void InitStack(SeqStack * S)//初始化顺序栈
    {
        S->top = -1;
    }
    
    
    void zhuanhuan(int a)
    {
        SeqStack S;
        InitStack(&S);
        int kk;
        while(a){
            kk=a%2;
            Push(&S,kk);
            a=a/2;
        }
        while(IsEmpty(&S)==0){
            int x;
            Pop(&S,&x);
            printf("%d",x);
        }
        printf("
    ");
    
    }
    
    int main()
    {
        printf("欢迎使用!本程序将十进制转换成二进制
    ");
        printf("请输入一个十进制数
    ");
        int a;
        scanf("%d",&a);
        zhuanhuan(a);
    
        return 0;
    }
  • 相关阅读:
    Live2D 看板娘
    Live2D 看板娘
    python框架☞Flask
    Python框架☞Django
    Python ORM框架之SQLALchemy
    HTTP1.0 HTTP 1.1 HTTP 2.0主要区别
    【F12】修改 DevTools的主题
    【F12】网络面板
    【正在等待可用套接字】解决方法
    nginx反向代理压测问题记录
  • 原文地址:https://www.cnblogs.com/xzt6/p/5991439.html
Copyright © 2020-2023  润新知