以下為「十進位制數轉換為其他進製數」的示例:
1. 用c語言實現的版本
#include #include #define stacksize 100 /* 假定預分配的棧空間最多為100個元素 */
typedef int datatype; /*假定棧元素的資料型別為整型 */
typedef structseqstack;
/* 初始化,將順序棧置空 */
void initial(seqstack *s)
/* 判斷棧是否為空 */
int isempty(seqstack *s)
/* 判斷棧是否已滿 */
int isfull(seqstack *s)
/*進棧*/
void push(seqstack *s, datatype x)
s->data[++s->top] = x;/* 棧頂指標加1後,將x入棧 */
}/*出棧*/
datatype pop(seqstack *s)
return s->data[s->top--];/*棧頂元素返回後,將棧頂指標減1*/
}/* 取棧頂元素*/
datatype top(seqstack *s)
return s->data[s->top];
}/*假設n是非負的十進位制整數,輸出等值的b進製數*/
void multibaseoutput(int n, int b)
/*棧非空時,退棧輸出*/
while (!isempty(&s)) }
void main()
執行結果如下圖所示:
python實現十進位制轉換其他進製
這是python實現十進位制轉換二進位制的高階版 步驟與轉化為二進位制相似 1 十進位制除整數 2 餘數壓棧 3 順序出棧 十進位制轉其他進製 defbaseconverter number,base digits 0123456789abcdef srem 1 2兩步 除整數,餘數壓棧 while...
資料結構之棧 十進位制轉其他進製 棧基本操作
最近新學習到了棧,對於棧的理解比較淺顯,這裡說一下棧的基本操作,用了進製轉換的例子 以十進位制為例子,例如 1348 10 2504 8 運算過程 n ndiv 8nmod 8 1348 168 4 168 21 0 21 2 5 2 0 2 下面是 部分 1.定義棧 typedef struct ...
資料結構應用 十進位制二進位制轉換
棧,一種運算受限的線性表,後進先出 lifo class stack 進棧 enterstack elem 出棧 outstack 檢視棧頂元素,僅僅是檢視元素,不進行任何操作 peek 棧是否為空 isempty 清空棧 clear 棧內元素個數 size 十進位制轉換 function deci...