資料結構 進製轉換(10 n)

2021-10-10 18:42:45 字數 2125 閱讀 3850

所需知識:棧

#include

#include

using namespace std;

#include

#include

typedef

int status;

#define ok 1

#define error 0

#define true 1

#define false 0

// ------棧的順序儲存結構表示----------

#define stack_init_size 100

// 儲存空間初始分配量

#define stack_increment 10

// 儲存空間分配增量

typedef

int elemtype;

typedef

struct

sqstack;

void

initstack

(sqstack &s)

void

destroystack

(sqstack &s)

void

push

(sqstack &s, elemtype e)

*(s.top)

++= e;

}status pop

(sqstack &s, elemtype &e)

status gettop

(sqstack s, elemtype &e)

else

return error;

}status stackempty

(sqstack s)

關鍵函式**

//思路

1.將資料a每次取餘進製數,並進棧

2.對資料a進行修改,每次講a整除進製數

3.直到a<0為止

//將10進製數a轉換為n進製數

intconversion

(int a,

int n)

int e;

while

(s.top!=s.base)

return0;

}

可執行程式**
#include

#include

using namespace std;

#include

#include

typedef

int status;

#define ok 1

#define error 0

#define true 1

#define false 0

// ------棧的順序儲存結構表示----------

#define stack_init_size 100

// 儲存空間初始分配量

#define stack_increment 10

// 儲存空間分配增量

typedef

int elemtype;

typedef

struct

sqstack;

void

initstack

(sqstack &s)

void

destroystack

(sqstack &s)

void

push

(sqstack &s, elemtype e)

*(s.top)

++= e;

}status pop

(sqstack &s, elemtype &e)

status gettop

(sqstack s, elemtype &e)

else

return error;

}status stackempty

(sqstack s)

//將10進製數a轉換為n進製數

intconversion

(int a,

int n)

int e;

while

(s.top!=s.base)

return0;

}int

main()

資料結構 進製轉換

將八進位制數字 423.5176 轉換成十進位制 423.5176 4 82 2 81 3 80 5 8 1 1 8 2 7 8 3 6 8 4 275.65576171875 十進位制 將十進位制轉換為二進位制 八進位制 十六進製制 整數部分和小數部分的演算法不一樣 整數部分 除 n 取餘,逆序排...

資料結構 (棧) 進製轉換

資料結構實驗之棧一 進製轉換 輸入乙個十進位製非負整數,將其轉換成對應的 r 2 r 9 進製數,並輸出。input 第一行輸入需要轉換的十進位製非負整數 第二行輸入 r。output 輸出轉換所得的 r 進製數。example input 1279 8example output 2377 c 如...

資料結構 棧 進製轉換

棧的應用,進製轉換問題 演算法很簡單,除 取餘法,用棧來把餘數存起來,再出棧即可 上 進製轉換 seqsatck,測試ok author qian jipeng date 2019 3 23 satus done include include define maxsize 10 typedef s...