C語言,36進製以內的浮點數任意進製互相轉換

2021-09-27 07:20:35 字數 702 閱讀 4774

#include#include#includechar* hexconvert(char* num,int begin,int end)//將浮點數num從begin進製轉化成end進製(36進製以內)

if (isint)//處理整數字

else//處理小數字

}//將轉化好的十進位制轉化為目標進製

char* ans;//答案字串

char int_t[1005], dec_t[1005];//目標進製的整數部分和小數部分

int int_t_index = 0, dec_t_index = 0;

int tmp;

while (int_d)//處理整數字

int_t[int_t_index] = '\0';

ans = _strrev(int_t);//整數部分是先獲取的低位後獲取的高位,所以要反轉,strrev函式被_strrev替代了

indexf = 1.0 / double(end);

while (fabs(dec_d)>=eps)//處理小數字,dec_d如果小於精度就預設為0,跳出迴圈,否則當作不為0,繼續處理

dec_t[dec_t_index] = '\0';

strcat(ans, ".");

strcat(ans, dec_t);

return ans;

}

c語言整數轉浮點數 浮點數的秘密

我們在學習 c 語言時,通常認為浮點數和小數是等價的,並沒有嚴格區分它們的概念,這也並沒有影響到我們的學習,原因就是浮點數和小數是繫結在一起的,只有小數才使用浮點格式來儲存。其實,整數和小數可以都使用定點格式來儲存,也可以都使用浮點格式來儲存,但實際情況卻是,c 語言使用定點格式儲存整數,使用浮點格...

C語言 浮點數格式

description 輸入n 0 n 10000 個浮點數,要求把這n個浮點數重新排列 並非排序,而是對齊 後再輸出。每個浮點數中都有小數點且總長度不超過50位。input 第1行是乙個正整數n n 10000 後面n行每行乙個浮點數,每個浮點數中都保證小數點會出現。浮點數的長度不超過50位,注意...

C語言 浮點數加法

description 求2個浮點數相加的和。題目中輸入輸出 現浮點數都有如下的形式 p1p2.pi.q1q2.對於整數部分,p1p2.pi是乙個非負整數。對於小數部分,不等於0。input 第1行是測試資料的組數n,每組測試資料佔2行,分別是兩個加數。每組測試資料之間有乙個空行,每行資料不超過10...