用C语言模拟栈(简单实现)
生活随笔
收集整理的這篇文章主要介紹了
用C语言模拟栈(简单实现)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
//C語言模擬棧,簡單實現
#include <stdio.h>
#include <stdlib.h>
typedef struct Node node;
struct Node
{int data;node *next;
};
int quchu(node *p) //取出棧中的數
{if (p->next == NULL)return -1;else{int x = p->next->data;return x;}
}
node *QC(node *p) //去除已經取出的數
{node *L = p->next;p->next = L->next;free(L); //釋放空間L = NULL; //防止野指針return p;
}
node *insert(int data, node *p) //插入元素
{node *L = (node *)malloc(sizeof(node));L->data = data;L->next = p->next;p->next = L;return p;
}
int main()
{int n, num;node *head = (node *)malloc(sizeof(node));head ->next = NULL;scanf("%d", &n);for (int i = 0; i < n; i++){scanf("%d", &num);head = insert(num, head);//插入}for (int i = 1; i <= n; i++){int x = quchu(head);//取出if (x != -1)//如果返回-1,說明棧中沒有元素head = QC(head);//去除printf("%d\n", x);//打印元素}return 0;
}
總結
以上是生活随笔為你收集整理的用C语言模拟栈(简单实现)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vb界面设计(续)
- 下一篇: DOM-13 【实战】输入及状态改变事件