利用棧結構計算十進位制轉化二進位制

2021-08-31 12:33:53 字數 1042 閱讀 1441

//棧的順序表示實現

#include

#include

//棧初始大小

#define stack_init_size 100

//棧的增長大小

#define stackincrement 10

#define overflow 0

#define error 0

#define false 0

#define true 1

typedef int status;

typedef int selemtype;

typedef int boolean;

//棧的順序定義

typedef structstack;

//初始化棧

stack initstack()

//若棧不為空,則返回棧頂元素e

status gettop(stack s)

//入棧操作,若棧滿,則增加儲存空間

stack push(stack s, selemtype e)

*s.top++ = e;

return s;

}//入棧操作

stack pop(stack s)

printf("%d", * --s.top);

return s;

}//銷毀棧

stack destorystack(stack s)

//清空棧中資料

stack clearstack(stack s)

//判斷棧是否是空棧

boolean stackempty(stack s)

//返回棧的長度

int stacklength(stack s)

//計算十進位制數的二進位制

int main()

while(!stackempty(s))

printf("\n");

//銷毀棧

destorystack(s);

return 0;

}

利用棧二進位制轉化為十進位制

利用資料中的棧來進行數制轉換,可以深刻領悟棧的含義,也可對棧的定義,入棧,出棧來進行領悟。程式 如下 include include include define stack init size 20 定義為棧的初始記憶體大小 define stackincrement 10 定義為當棧的空間不夠時...

棧之二進位制轉化為十進位制

include include stdlib.h includeusing namespace std define stack size 100 define stackincrement 10 typedef char elemtype struct sqstack void initstack...

二進位制如何轉十進位制,十進位制如何轉二進位制

學計算機的朋友剛開始學習時都要接觸進製之間的轉換,二進位制 十進位制 八進位制 十六進製制等,這個是很枯燥的,轉來轉去就轉矇圈了,別蒙別蒙,今天咱們乙個乙個搞定,看看二進位制和十進位制之間如何相互轉換的。轉成二進位制主要有以下幾種 正整數轉二進位制,負整數轉二進位制,小數轉二進位制 1 正整數轉成二...