zoukankan      html  css  js  c++  java
  • 顺序栈实现十进制与二进制的转化

    用顺序栈实现十进制与二进制的转化

     1 #include <stdio.h>
     2 #include <stdlib.h>
     3 
     4 #define M 100
     5 typedef int ElemType;
     6 typedef struct
     7 {
     8     ElemType data[M];
     9     int top;
    10 }Stack;
    11 
    12 //初始化栈
    13 void InitStack(Stack *s)
    14 {
    15     s->top = -1;
    16 }
    17 int Push(Stack *s,ElemType e)
    18 {
    19     if (s->top == M-1)
    20     {
    21         printf("栈满
    ");
    22         return 0;
    23     }
    24     s->top++;
    25     s->data[s->top]=e;
    26     return 1;
    27 }
    28 
    29 //判断是否为空
    30 int Empty(Stack *s)
    31 {
    32     return(s->top==-1);
    33 }
    34 //出栈
    35 int Pop(Stack *s,ElemType *e)
    36 {
    37     if(Empty(s))
    38     {
    39         printf("
     Stack is free");
    40         return 0;
    41     }
    42     *e=s->data[s->top];
    43     s->top--;
    44     return 1;
    45 }
    46 
    47 void Conversion(int N)
    48 {
    49     int e;
    50     Stack *s = (Stack *)malloc(sizeof(Stack));
    51     InitStack(s);
    52     while(N)
    53     {
    54         Push(s,N%2);
    55         N=N/2;
    56     }
    57     while(!Empty(s))
    58     {
    59         Pop(s,&e);
    60         printf("%d",e);
    61     }
    62 }
    63 
    64 int main()
    65 {
    66     int n,m;
    67     while(1)
    68     {
    69         printf("1:进行转换,2:退出
    ");
    70         scanf("%d",&n);
    71         switch(n)
    72         {
    73             case 1:    printf("请输入待转换的整数值: ");
    74                     scanf("%d",&m);
    75                     printf("转换为二进制值为: ");
    76                     Conversion(m);
    77                     printf("
    ");
    78                     break;
    79             case 2:    exit(0);
    80             default:    printf("error
    ");
    81         }
    82     }
    83 }
  • 相关阅读:
    C/C++ 库函数 是否调用 WinAPI
    获得图形的实际坐标值
    电影
    adobe flash player 下载地址
    加速软件
    电影_排行榜
    transform
    MyEclipse
    Android
    AAA
  • 原文地址:https://www.cnblogs.com/sxcxfl/p/10755295.html
Copyright © 2011-2022 走看看