/*
煙台大學計算機學院
檔名稱:ycddd.cpp
完成日期:2023年10月18日
問題描述:定義順序棧儲存結構,實現其基本運算
輸入描述:無
輸出描述:順序棧的操作以及棧的操作後的元素輸出,以及出棧的元素輸出
*/main:
#include
#include "stlist.h"
intmain()
printf("\n"
);
printf("(8)棧為%s\n"
,(stackempty(s)?
"空":
"非空"
));
printf("(9)釋放棧\n"
);
destroystack(s);
return
0;
} stlist.cpp:
#include
#include
#include "stlist.h"
void
initstack(sqstack *&s)
void
destroystack(sqstack *&s)
intstacklength(sqstack *s)
//返回棧中元素個數——棧長度
bool
stackempty(sqstack *s)
bool
push(sqstack *&s,elemtype e)
bool
pop(sqstack *&s,elemtype &e)
bool
gettop(sqstack *s,elemtype &e)
void
dispstack(sqstack *s)
//輸出棧
stlist.h:
#define maxsize 100
typedef
char
elemtype;
typedef
struct
sqstack; //順序棧型別定義
void
initstack(sqstack *&s);
//初始化棧
void
destroystack(sqstack *&s);
//銷毀棧
bool
stackempty(sqstack *s);
//棧是否為空
intstacklength(sqstack *s);
//返回棧中元素個數——棧長度
bool
push(sqstack *&s,elemtype e);
//入棧
bool
pop(sqstack *&s,elemtype &e);
//出棧
bool
gettop(sqstack *s,elemtype &e);
//取棧頂資料元素
void
dispstack(sqstack *s);
//輸出棧
執行結果:
知識點總結:需考慮棧上溢位和棧下溢位。
學習心得:學會了順序棧的儲存結構以及基本運算。
第五周專案一
煙台大學計算機與控制工程學院 檔名稱 ycddd.cpp 完成日期 2017年10月15日 問題描述 定義順序棧儲存結構,實現其基本運算 輸入描述 無 輸出描述 順序棧的操作以及棧的操作後的元素輸出,以及出棧的元素輸出 main include include stlist.h int main p...
第五周專案五
檔名稱 專案5.cbp 作 者 張延飛 完成日期 2017年10月10日 版 本 號 v1.0 問題描述 利用sqstack.h中棧的基本運算,實現將乙個中綴表示式轉換為對應的字尾表達 式的演算法。例如,輸入 56 20 4 2 輸出字尾表示式 56 20 4 2 要求 在數字後加 輸入描述 字首表...
第五周專案1 3
檔名稱 完成日期 2014 年 3月 25 日 版本號 v1.0 對任務及求解方法的描述部分 輸入描述 無 問題描述 程式輸出 問題分析 使用帶引數建構函式 演算法設計 include include using namespace std class double x,double y,doubl...