请c语言高手帮忙看这c语言程序该如何修改

来源:百度知道 编辑:UC知道 时间:2024/05/21 09:19:52
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#define Max 10

typedef int SElem;
typedef struct stack
{
int top;
SElem Elem[Max];
}Stack;

typedef enum bool{FALSE,TRUE}BOOL;

void push_stack(Stack *s,SElem e);
void pop_stack(Stack *s,SElem *e);
void gettop_stack(Stack *s,SElem *e);
void stack_traverse(Stack *s,SElem *e);
void stack_status(Stack *s);
void stack_lenght(SElem e);
void destroy_stack(Stack *s);
void create_stack(Stack *s);
void push(Stack *s,SElem e);
void pop(Stack *s,SElem e);
BOOL isempty(Stack *s);
BOOL isfull(Stack *s);

void push_stack(Stack *s,SElem e)
{
int ans;
if(isfull(&stack))
printf("This is a full stack\n");
else
{
printf("Insert data:\n");
scanf("%d%c",&e,&ans);
push(&stack,e);
}
}

刚才改的有错,这回所有功能我都试了。没问题了,记得加分
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#define Max 10

typedef int BOOL;
typedef int SElem;
typedef struct stack
{
int top;
int base;
SElem Elem[Max];
}Stack;

void push_stack(Stack *s,SElem e);
void pop_stack(Stack *s,SElem *e);
void gettop_stack(Stack *s,SElem *e);
void stack_traverse(Stack *s,SElem *e);
void stack_status(Stack *s);
void stack_length(Stack *e);
void destroy_stack(Stack *s);
void create_stack(Stack *s);
void push(Stack *s,SElem e);
void pop(Stack *s,SElem *e);
BOOL isempty(Stack *s);
BOOL isfull(Stack *s);
void free(Stack *s);

void push_stack(Stack *s,SElem e)
{
int ans;
if(isfull(s))
printf("This is a full stack\n");
else
{
printf("Insert data:\n");
s