資料結構 十進位制轉二進位制(順序棧設計和應用)

2021-10-06 04:57:56 字數 1400 閱讀 7644

設計乙個順序棧,並利用該順序棧將給定的十進位制整整數轉換為二進位制並輸出。

函式介面定義:

#define maxsize 100	

/* 棧最大容量 */

int top;

/* 棧頂指標 */

int mystack[maxsize]

;/* 順序棧 */

/*判棧是否為空,空返回true,非空返回false */

bool isempty()

;/* 元素x入棧 */

void

push

(int x)

;/* 取棧頂元素 */

intgettop()

;/* 刪除棧頂元素 */

void

pop(

);

其中 maxsize 和 top 分別為棧的最大容量和棧頂指標。陣列mystack 用來模擬順序棧。請實現給出的isempty、push、gettop和pop這四個函式。

裁判測試程式樣例:

#include

using namespace std;

#define maxsize 100

/* 棧最大容量 */

int top;

/* 棧頂指標 */

int mystack[maxsize]

;/* 順序棧 */

/*判棧是否為空,空返回true,非空返回false */

bool isempty()

;/* 元素x入棧 */

void

push

(int x)

;/* 取棧頂元素 */

intgettop()

;/* 刪除棧頂元素 */

void

pop();

/* 十進位制正整數轉換為二進位制 */

void

dec2bin

(int x)

while(!

isempty()

)printf

("\n");

}int

main

(int argc,

char

const

*ar**)

return0;

}/* 請在這裡填寫答案 */

輸入樣例:

10輸出樣例:

1010

bool isempty()

/* 元素x入棧 */

void

push

(int x)

}/* 取棧頂元素 */

intgettop()

/* 刪除棧頂元素 */

void

pop(

)

二進位制轉十進位制

二進位制轉十進位制方法很多,如字元陣列,指標法等 下面用字串函式的方法實現 二進位制轉十進位制 主要用 到 string函式性質及pow求乙個數的n次方的函式過載 by adengou 2010.08.04 win7 dev c 5.0 vs 2010 通過 include include incl...

十進位制轉二進位制

includeint dg unsigned n,int c 注意 引數型別是unsigned int main 陣列全部初始化為0 printf d n sizeof int unsigned temp,u temp u 4294967295u int tu int u printf u u,tu...

十進位制轉二進位制

宣告 最後一種降冪法頗具魅力,而且與方法二有異曲同工之妙 十進位制轉二進位制的幾種方法 輸入 乙個無符號的十進位制整數 輸出 對應十進位制的二進位制顯示 例如 input 10,output 1010 方法一 除二取餘法 forinput 0 cout input 2 input 2 end 輸出順...