鱼C论坛

 找回密码
 立即注册
查看: 3706|回复: 1

帮我看看这个有没有问题,运行正常

[复制链接]
发表于 2018-1-3 22:02:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <stdio.h>
#include <malloc.h>
typedef struct Stack
{
        int data;
        struct Stack * snext;
}Stack;

typedef struct  pStack
{
        struct Stack * top;
        struct Stack * base;
        int stacksize;
}pStack;
typedef struct pStack * PS;

int  InitStack(PS);
int Push(PS,int );
int Pop(PS,int *);
int ShowStack(PS);
int GetStackNum(PS);
int main()
{
    pStack S;
    int e=100;
        InitStack(&S);
        Push(&S,100);
        Push(&S,200);
        Push(&S,300);
        Push(&S,1700);
        Push(&S,1500);
    ShowStack( &S);
        Pop(&S,&e);
        printf("1.[%d] 出栈\n",e);
        Pop(&S,&e);
        printf("2.[%d] 出栈\n",e);
        Pop(&S,&e);
        printf("3.[%d] 出栈\n",e);
        Pop(&S,&e);
       
    printf("4.[%d] 出栈\n",e);
        ShowStack( &S);

        int i=0;
    i=GetStackNum(&S);
    printf("栈中的数据个数:%d \n",i);
        getchar();
        return 1;
}


int GetStackNum(PS S)
{
        return S->stacksize;
}


int Pop(PS S,int *e)
{
        Stack *s;
        s=S->top;
        *e=s->data;
        S->top=s->snext;
        free(s);
        S->stacksize--;
    return 1;
}

int Push(PS S,int e)
{
        Stack *p;
        p=(Stack *)malloc(sizeof(Stack));
        if(!p)
                return 0;
        p->snext=S->top;
        p->data=e;
        S->top=p;
        S->stacksize++;
        return 1;
}


int ShowStack(PS S)
{
        Stack *p=S->top;
    while (p!=S->base)
        {
               
                printf("%d \n",p->data);
                p=p->snext;
        }

        return 1;
}

int InitStack(PS S)
{
       
        S->base=(Stack *)malloc(sizeof(Stack));
        if(!S->base)
                return 0;
        S->top=S->base;
        S->base->snext=NULL;
        S->stacksize=0;
        return 1;

}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-1-4 11:10:07 | 显示全部楼层
你要实现什么,你怀疑可能出问题的地方在哪里
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-24 21:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表