基于visual Studio2013解决算法导论之019栈实现(基于数组)
生活随笔
收集整理的這篇文章主要介紹了
基于visual Studio2013解决算法导论之019栈实现(基于数组)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目
用數組實現棧
解決代碼及點評
#include <stdio.h> #include <stdlib.h> #include <time.h> #include <malloc.h> #include<assert.h>typedef struct Stack {int nTop;int nLen;int *pnArr; }Stack, *PStack;//初始化棧 nLen為棧的大小 PStack Create(int nLen) {if (nLen <= 0){return NULL;}PStack pStack = (PStack)malloc(sizeof(Stack)); pStack->nTop = 0;pStack->nLen = nLen;pStack->pnArr = (int *)malloc(sizeof(int) * nLen);return pStack; }bool IsEmpty(PStack pStack) {return pStack->nTop == 0; }bool IsFull(PStack pStack) {return pStack->nTop == pStack->nLen; }void Push(PStack pStack, int nValue) {if (pStack->nTop == pStack->nLen){printf("棧已滿!\n");return;}pStack->pnArr[pStack->nTop] = nValue;pStack->nTop++; }int Pop(PStack pStack) {if (pStack->nTop == 0){printf("棧為空!\n");}else{pStack->nTop--;return pStack->pnArr[pStack->nTop];}}void Destroy(PStack pStack) {free(pStack->pnArr);pStack->pnArr = NULL;free(pStack);pStack = NULL; } int main() {PStack pStack = Create(10);int i;for (i = 0; i < 12; i++){Push(pStack, i);}for (i = 0; i < 10; i++){printf("%d ", Pop(pStack));}Destroy(pStack);system("pause");return 0; }代碼下載及其運行
代碼下載地址:http://download.csdn.net/detail/yincheng01/6858815
解壓密碼:c.itcast.cn
下載代碼并解壓后,用VC2013打開interview.sln,并設置對應的啟動項目后,點擊運行即可,具體步驟如下:
1)設置啟動項目:右鍵點擊解決方案,在彈出菜單中選擇“設置啟動項目”
2)在下拉框中選擇相應項目,項目名和博客編號一致
3)點擊“本地Windows調試器”運行
程序運行結果
轉載于:https://www.cnblogs.com/niulanshan/p/6175050.html
總結
以上是生活随笔為你收集整理的基于visual Studio2013解决算法导论之019栈实现(基于数组)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 处理远程通知的方法
- 下一篇: 九度OJ 1437 To Fill or