📄 stack.c
字号:
//堆栈的有关算法#define MAX 30 // 最多30个元素 #define NULL -1 //失败标志typedef struct{ int d[MAX] ; //用数组作为堆栈的储存空间 int top ; //指示栈顶位置的变量}STACK ; //堆栈类型定义STACK sq ; //定义堆栈int PUSH (int x) //堆栈的入栈算法{ if ( sq.top == MAX-1 ) //满栈,入栈失败 return NULL; else { sq.top++; //调整栈顶变量 sq.d[sq.top] = x ; //数据入栈 return 1 ; } //入栈成功}int POP ( )//堆栈的出栈算法{ if (sq.top == NULL ) return NULL; //空栈,出栈失败 else return sq.d[sq.top--] ;//返回栈首元素,调整栈首变量}void main ( ){ int x; sq.top = NULL ;//初始化空栈 PUSH (45); //调用入栈算法,45入栈 PUSH (67); //调用入栈算法,67入栈 PUSH (29); //调用入栈算法,29入栈 x = POP (); //调用出栈算法,x=29 PUSH (44); //调用入栈算法,44入栈 x = POP (); //调用出栈算法,x=44 PUSH (37); //调用入栈算法,37入栈 PUSH (89); //调用入栈算法,89入栈 x = POP (); //调用出栈算法,x=89 x = POP (); //调用出栈算法,x=37 x = POP (); //调用出栈算法,x=67 x = POP (); //调用出栈算法,x=45 while (1) ; //在这一行设置断点,中止程序运行,以便观察程序运行的结果 }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -