進製轉換 C

2021-09-11 22:17:59 字數 973 閱讀 1192

題目描述:

將乙個長度最多為30位數字的十進位製非負整數轉換為二進位制數輸出。

輸入描述:

多組資料,每行為乙個長度不超過30位的十進位製非負整數。

(注意是10進製數字的個數可能有30個,而非30bits的整數)

輸出描述:

每行輸出對應的二進位制數。

注:

30位長的十進位制數,超過了long int型別的取值範圍,因此不能用簡單的long int型對輸入數字進行儲存。

求二進位制的過程(舉例如下):

10轉換為二進位制為1010.

思路:

將資料以string型別輸入,然後將每一位數字存放在int型陣列array中。

求二進位制的方法:每次迴圈將array中的數字除以2,餘數放在result陣列中,商作為新的數字存放在陣列array中

結果輸出:將result中的資料倒序輸出

實現:

#include #include using namespace std;

int main()

result[i++] = temp;//temp是大數除以2的餘數

for (j = 0; j < s.length(); j++)

if (array[j] != 0)

break;

if (j == s.length())//array中所有元素均為0,計算完畢

}} system("pause");

return 0;

}

【記錄一下自己思考的過程,若有更為簡便的方法,歡迎指導(●'◡'●)】

C 進製轉換

十進位制轉二進位制 console.writeline 十進位制166的二進位制表示 convert.tostring 166,2 十進位制轉八進位制 console.writeline 十進位制166的八進位制表示 convert.tostring 166,8 十進位制轉十六進製制 console...

C 進製轉換

由於二進位制數在c 中無法直接表示,所以所有二進位制數都用乙個字串來表示 例如 二進位制 1010 表示為 字串 1010 int d 10 十進位制轉二進位制字串 console.writeline convert.tostring d,2 輸出 1010 十進位制轉十六進製制字串 console...

C 進製轉換

將二進位制轉換成十進位制 public int converttoint string str 將二進位制轉換成八進位制 public string convertto8 string bin 將二進位制轉換成十六進製制 public string convertto16 string bin co...