預設情況下,用科學計數法表示實數,輸出的指數字數為3。如何控制使其只輸出2位指數字?vc6下如何?vc2005又如何?
在vc2005下,執行庫提供乙個函式_set_output_format可以控制printf輸出的實數的指數字,要輸
出2位指數字需要這樣設定:
unsigned int old_exponent_format = _set_output_format(_two_digit_exponent);
使用完恢復原來設定:
_set_output_format(old_exponent_format);
在vc6中沒有此函式,相同功能的函式我也沒有發現。
在c++標準庫中的stream中,我也沒有找到這樣的格式控制符。為了在vc6下完成此功能,最後只能
選擇曲線救國的道路了——刪除乙個0。
1、對於printf這樣的輸出解決方法:
2、對於stream這樣的輸出解決方法:
這裡只是考慮輸出檔案的情況。
.h file
.cpp file:
test code:
vc6下,不知還有沒有更好的辦法……
普通數字到科學計數法的轉換
這個 的功能是把給定的數用科學計數法的方式實現 來自於 演算法筆記 p209 數以string類的形式給出,返回的也是string類,並以引用方式修改了指數e,一開始e 0,其中精度n是全域性變數,在函式外宣告 這個演算法是按指定精度保留了非0的數字 至於需要以什麼形式輸出m.還是0.需要根據題目情...
python將科學計數法型數字的字串轉化為數字
之前由於需要讀取一些資料集裡的資訊,而這些資訊是存為txt檔案,讀取之後是字串。資料本來全部都是數字。只不過用科學計數法表示的,使用int,float強轉會報錯。在網上稍微查了一下,也沒找到啥好辦法。後來,剛好看到一本書,提到了乙個函式。轉化起來很簡單。eval 1.23456789e 5 輸出 1...
匯出excel檔案數字會自動變科學計數法的解決方式
將資料匯出excel檔案變成科學計數法問題 分析 用程式匯出的csv檔案,當字段中有比較長的數字字段存在時,在用excel軟體檢視csv檔案時就會變成科學技術法的表現形式。其實這個問題跟用什麼語言匯出csv檔案沒有關係。excel顯示數字時,如果數字大於12位,它會自動轉化為科學計數法 如果數字大於...