第6周 專案4 數制轉換

2021-07-05 19:07:30 字數 1618 閱讀 4225

問題及**:

/*

*檔名稱:test.cpp

*作 者:焦夢真

*完成日期:2023年10月12日

*版 本 號;v1.0

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

*輸入描述:

*程式輸出:

*/#include #include "sqstack.h"

void multibaseoutput (int number,int base)

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

}int main()

(2)標頭檔案: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

(3)原始檔: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) //輸出棧

執行結果:

學習心得:

棧的用途十分廣泛,利用其先進後出的特性,實現數制轉換。

第6周專案4 數制轉換

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

第6周 專案4 數制轉換

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

第6周專案4 數制轉換

問題及 檔名稱 main.cpp sqstack.cpp sqstack.h main.cpp include include sqstack.h int main dispstack ysz sqstack.h define maxsize 100 typedef int elemtype typ...