第6周專案4 數字轉換(棧)

2021-07-06 08:47:49 字數 1589 閱讀 4262

/*

檔名稱:專案4.cpp

完成日期:2023年11月2日

版 本 號:v1.0

問題描述:把十進位制的整數轉換為二至九之間的任一進製數輸出。請利用棧設計演算法,並實現程式。

輸入描述:數字與進製

程式輸出:輸出轉換結果

*/

執行程式如下:

sqstack.h

#ifndef sqstack_h_included

#define sqstack_h_included

#define maxsize 100

typedef int elemtype;

typedef struct

sqstack; //順序棧型別定義

void initstack(sqstack *&s); //初始化棧

void destroystack(sqstack *&s); //銷毀棧

bool stackempty(sqstack *s); //棧是否為空

int stacklength(sqstack *s); //返回棧中元素個數——棧長度

bool push(sqstack *&s,elemtype e); //入棧

bool pop(sqstack *&s,elemtype &e); //出棧

bool gettop(sqstack *s,elemtype &e); //取棧頂資料元素

void dispstack(sqstack *s); //輸出棧

#endif // sqstack_h_included

sqstack.cpp

#include #include #include "sqstack.h"

void initstack(sqstack *&s)

void destroystack(sqstack *&s)

int stacklength(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) //輸出棧

進製變換實現函式&main函式

#include #include "sqstack.h"

void multibaseoutput (int number,int base)

while(!stackempty(s)) //棧非空時退棧輸出

}int main()

執行結果如下:

知識點總結:棧鏈的應用。

學習心得:利用棧解決實際問題。

第6周專案4 數制轉換

問題及 檔名稱 第6周專案4 數制轉換.cpp 作 者 劉強 完成日期 2015年10月9日 版 本 號 v1.0 問題描述 把十進位制的整數轉換為二至九之間的任一進製數輸出。請利用棧設計演算法,並實現程式。輸入描述 若干資料。程式輸出 對應進製數的輸出。鏈棧演算法庫 進製變換實現函式 void m...

第6周 專案4 數制轉換

問題及 檔名稱 test.cpp 作 者 焦夢真 完成日期 2015年10月12日 版 本 號 v1.0 問題描述 把十進位制的整數轉換為任一進製數輸出。請利用棧設計演算法,並實現程式。輸入描述 程式輸出 include include sqstack.h void multibaseoutput ...

第6周 專案4 數制轉換

檔名稱 www.cpp 作 者 董子賓 完成日期 2015年 10月 12日 版 本 號 v1.0 問題描述 把十進位制的整數轉換為任一進製數輸出。請利用棧設計演算法,並實現程式。輸入描述 無 程式輸出 轉換完成後的數值 問題及 include include sqstack.h void mult...