C 實現任意進製的相互轉換

2021-10-11 01:35:55 字數 1091 閱讀 1969

進製轉換是計算機內部時時刻刻都在進行活動,本篇文章也是進製轉換的演算法介紹,不過不同的是我想利用ascll編碼實現2到61之間任意進製的相互轉換,更大進製的表示方法只不過是十六進製制表示方法的延伸:用字母a到z表示整數10到35,字母a到z表示整數36到61。這樣就可以表示2到61之間的任意進製啦,為方便理解ascll表放在**後面,可以自行檢視。

下面直接給上**:

#include

#include

using

namespace std;

void

dectoother

(int tmp,

int b)

;void

othertodec

(int a,

char str,

int b)

;const

int maxsize =

10000

;int a, b;

char str[maxsize]

;int

main()

void

othertodec

(int a,

char str,

int b)

dectoother

(tmp, b)

;//由十進位制轉換為目標進製

}void

dectoother

(int tmp,

int b)

;while

(tmp !=0)

//十進位制轉換為目標進製演算法,結果放到陣列s中

cout << a <<

"進製數"

<< str <<

"的"<< b <<

"進製表示為:"

;for

(; i >

0; i--

)//利用ascll編碼實現字母表示兩位整數,並倒序輸出轉換結果

cout <<

'\n'

;}

示例:

附:ascll表

C 實現任意進製的相互轉換

進製轉換是計算機內部時時刻刻都在進行活動,本篇文章也是進製轉換的演算法介紹,不過不同的是我想利用ascll編碼實現2到61之間任意進製的相互轉換,更大進製的表示方法只不過是十六進製制表示方法的延伸 用字母a到z表示整數10到35,字母a到z表示整數36到61。這樣就可以表示2到61之間的任意進製啦,...

任意進製整數之間的相互轉換(C 實現)

任意進製整數之間的相互轉換經常出現在各大it公司的筆試面試中,這裡我對其中的演算法和實現 做個總結。演算法思想 例如,要求將x1進製的數r1轉化成為x2進製的數r2,首先應該將r1轉化為十進位制的數r decimal,然後再將十進位制數r decimal轉化為x2進製的數r2。1 下面是我用c 實現...

任意進製整數之間的相互轉換(C 實現)

任意進製整數之間的相互轉換經常出現在各大it公司的筆試面試中,這裡我對其中的演算法和實現 做個總結。演算法思想 例如,要求將x1進製的數r1轉化成為x2進製的數r2,首先應該將r1轉化為十進位制的數r decimal,然後再將十進位制數r decimal轉化為x2進製的數r2。1 下面是我用c 實現...