91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++如何對浮點數保存指定位小數

發布時間:2021-09-08 14:50:40 來源:億速云 閱讀:1025 作者:小新 欄目:編程語言

小編給大家分享一下C++如何對浮點數保存指定位小數,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

1、背景
對浮點數保存指定位小數。比如, 1.123456. 要保存1位小數,,調用方法后, 保存的結果為: 1.1。 再比如,1.98765, 保存2位小數的結果為: 2.00.

2、 解決方案
A、添加頭文件

#include <sstream> 
#include <iomanip>

B、添加命名空間

using namespace std;

C、添加函數

/* 函數名:round 
/* 函數功能:數據精度計算函數 
/* 函數參數:float src:待求精度數   int bits:精度(0表示保留小數點后0位小數,1表示保留1位小數,2:表示保留2位小數) 
/* 函數返回值:精度求取結果 
/* Author: Lee 
/************************************************************************/ 
float round(float src, int bits);

函數實現

float CDemo1Dlg::round(float src, int bits) 
{ 
  stringstream ss; 
  ss << fixed << setprecision(bits) << f; 
  ss >> f; 
 
  return f; 
 
}

D、調用方式

CString str2 = L"99.054"; 
float f2 = (float)_wtof(str2); 
f2 *= 10; 
f2 = this->round(f2, 2);

 E 、注意
比如, 1.05, double在計算機中表示為 1.0499999997, float表示為1.0500000003, 但其實際都是與1.05相等的。
round方方式對處理的位數為5的情況有例外,比如: 1.05, 處理的結果 可能為1.0499999997。 這里寫的是float, 你可以換做其他的類型。自己多測幾次就明白了

看完了這篇文章,相信你對“C++如何對浮點數保存指定位小數”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

c++
AI

淮安市| 巫溪县| 新和县| 漯河市| 荣昌县| 宁明县| 三河市| 玉溪市| 利辛县| 湄潭县| 无棣县| 红安县| 唐海县| 衢州市| 连平县| 个旧市| 房山区| 温宿县| 中西区| 黑龙江省| 兴业县| 若尔盖县| 右玉县| 英超| 留坝县| 长武县| 六枝特区| 神木县| 凤阳县| 大埔区| 安仁县| 凤庆县| 武功县| 黑龙江省| 怀来县| 安达市| 察隅县| 镇赉县| 盐池县| 定兴县| 汉川市|