一般来说c++四舍五入有两种种方法
1:正数加上0.5,负数减去0.5
代码实现:
#include <iostream>
using namespace std;
int round1(double number)
{
return (number>0.0)?(number+0.5):(number-0.5);
}
然后直接调用就可以了;
如果要对浮点数按位四舍五入,就要换种方式。比如要对1.12345保留4位小数,先乘以10000(10^4,几位小数就是几次方),然后加0.5,得11235,再除以10000,得到1.1235。代码如下:
#include<bits/stdc++.h> //万能函数头
using namespace std;
double round3(double number,int bits){
for(int i=0;i<bits;++i){
number*=10;
}
number=(long long)(number+0.5);
for(int i=0;i<bits;++i){
number/=10;
}
return number;
}
int main(){
double x;
int n;
cin >> x >> n;
cout << round3(x,n);
}
2:用函数
setprecision()函数
cout << fixed << setprecision(a); a表示舍几位,