栈 10进转换2

2018-12-20  本文已影响0人  小风xf

#include <stdio.h>

#define N 200

struct stack

{

    int top ;

    int data[N];

};

struct stack mystack = { -1 ,{0}};

int isempty();

 int push( int  data);

int pop();

int isempty()

{

    if (mystack.top==-1) {

        return 1;

    }

    else

    {

        return 0;

    }

}

void sekong()

{

    mystack.top = -1;

}

int push(int data)

{

    if (mystack.top+1 <= N-1) {

        mystack.data[mystack.top+1] = data;

        mystack.top += 1;

        return 1;

    }

    else

    {

        return 0;

    }

}

int pop()

{

    if (isempty()==0) {

        mystack.top -= 1;

        return mystack.data[mystack.top+1];

    }

    else

    {

        return -1;

    }

}

void main()

{

    int num = 10;

    while (num) {

        push(num %2);

        num/=2;

    }

    printf("ten to two = ");

    while (!isempty()) {

        printf("%d",pop());

    }

    printf("\n");

}

上一篇 下一篇

猜你喜欢

热点阅读