10進製小數轉化為任意進製小數

2021-06-20 19:56:53 字數 717 閱讀 7106

將任意十進位制正小數分別轉換成2,3,4,5,6,7,8,9進製正小數,小數點後保留8位,並輸出。例如:若十進位制小數為0.795,則輸出:

十進位制正小數 0.795000 轉換成 2 進製數為: 0.11001011

十進位制正小數 0.795000 轉換成 3 進製數為: 0.21011011

十進位制正小數 0.795000 轉換成 4 進製數為: 0.30232011

十進位制正小數 0.795000 轉換成 5 進製數為: 0.34414141

十進位制正小數 0.795000 轉換成 6 進製數為: 0.44341530

十進位制正小數 0.795000 轉換成 7 進製數為: 0.53645364

十進位制正小數 0.795000 轉換成 8 進製數為: 0.62702436

十進位制正小數 0.795000 轉換成 9 進製數為: 0.71348853

#includevoid fun(double dtestno, int ibase)

printf("0.");

for(ino=0; ino<8; ino++) printf("%d", it[ino]);

printf("\n");

}int main()

十進位制小數轉化為二進位制小數

轉了這篇文章,完全是群裡討論計算機無法精確表示小數才想找一下原因的。究其原因就是十進位制小數無法用2進製表示 0.5什麼的可以表示 大學也學過,不過已經忘了。一 二進位制數轉換成十進位制數 由二進位制數轉換成十進位制數的基本做法是,把二進位制數首先寫成加權係數展開式,然後按十進位制加法規則求和。這種...

十進位制小數轉化為二進位制小數

一 二進位制數轉換成十進位制數 由二進位制數轉換成十進位制數的基本做法是,把二進位制數首先寫成加權係數展開式,然後按十進位制加法規則求和。這種做法稱為 按權相加 法。例1105把二進位制數110.11轉換成十進位制數。二 十進位制數轉換為二進位制數 十進位制數轉換為二進位制數時,由於整數和小數的轉換...

十進位制小數轉化為二進位制小數

由二進位制數轉換成十進位制數的基本做法是,把二進位制數首先寫成加權係數展開式,然後按十進位制加法規則求和。這種做法稱為 按權相加 法。例1105把二進位制數110.11轉換成十進位制數。十進位制數轉換為二進位制數時,由於整數和小數的轉換方法不同,所以先將十進位制數的整數部分和小數部分分別轉換後,再加...