**也不算是任意進製,最高只能到十六進製制。見諒!
**如下:
#include
#include
#include
#define maxsize 100
//靜態順序棧儲存的最大空間
const
char f=
"0123456789abcdef"
;//定義乙個全域性常量 ,方便匯出十進位制以上的不為數字形式的資料的顯示
void
interrupt
(void
)//建立乙個中斷函式
typedef
struct
sqqueue;
void
initqueue
(sqqueue &q)
//初始化佇列
void
enqueue
(sqqueue &q,
char e)
//入隊 ,由於是迴圈佇列,故少用乙個元素空間,該函式在有maxsize-1個元素時便已判斷為滿
else
}char
dequeue
(sqqueue &q)
//出隊
return a;
}void
inputnumber
(sqqueue &q,
int&b)
//數的輸入
}void
decimal
(sqqueue q,
int b)
//十進位制轉換操作 }if
(c)//判斷輸入的資料是否在輸入的進製範圍內
m =(m + i)
* b;}if
(!c)
printf
("十進位制為:%d\n"
,m/b);}
intmain()
但是**不是太嚴格,也是只能輸入指定資料。
結果演示:
錯誤輸入結果演示(八進位制最大數為7):
(完)
十進位制轉換成任意進製 c語言
今天搞懂了怎麼把十進位制轉換成任意進製,我試了好幾次有時邏輯上沒有錯誤,但是我由於c語言基礎不是太好,所以老是出現一些基礎錯誤。以此來記錄一下我要寫的 以後繼續銘記。最近也寫了乙個十進位制轉換任意進製 鏈棧實現 十進位制轉換任意進製,遞迴實現 void fun int n,int m else c ...
C 實現十進位制轉換為任意進製
十進位制數在c 中用什麼表示?乙個十進位制數,在程式中用什麼方式轉換為其他進製,和在數學中的思路一樣嗎?輸出的結果用什麼表示比較方便?下面的程式中digit思考為什麼要用靜態變數?include include include include using namespace std class so...
十進位制和任意進製的轉換
s.push 入棧s.top 取棧頂元素 s.pop 出棧s.empty 棧不為空 1.十進位制轉換成八進位制 二進位制 include include include windows.h using namespace std int main while s.empty system pause...