博主由于某种原因很久没写代码了,所以今天简简单单用C语言写了个入栈出栈的代码。
#include <stdio.h> #define Elemytype int #define Maxsize 50 #define True 1 #define Flase 0 typedef struct Seq_stack{ Elemytype data[Maxsize]; Elemytype Top; }Seq_stack; Elemytype Push_stack(Seq_stack *Stack,Elemytype num); Elemytype Pop_stack(Seq_stack *Stack,int *num); int main(void) { Seq_stack Stack; Stack.Top = 0; int num = 0; printf("%d",Push_stack(&Stack,num)); num = 1; printf("%d",Pop_stack(&Stack,&num)); printf("%d",num); return 0; } Elemytype Push_stack(Seq_stack *Stack,Elemytype num) { if (Stack -> Top >= Maxsize - 1) { printf("%s","Stackoverflow"); return Flase; } Stack -> data[++(Stack -> Top)] = num; return True; } Elemytype Pop_stack(Seq_stack *Stack,int *num) { if(Stack -> Top == -1) { printf("%s","Stack Empty"); return Flase; } *(num) = Stack -> data[(Stack -> Top)--]; return True; } Elemytype Get_top(Seq_stack *stack,int *num) { if(Stack -> Top == -1) { printf("%s","Stack Empty"); return Flase; } *num = stack -> data[stack -> Top]; return True; }