C++中的小数位数控制和有效数字控制
首先来看看C++小数位数控制CCF-201903-1 小中大代码中认识如何控制小数位数---外加algorithm函数sort()
如何控制有效输出位数呢?从代码认识结果
总结
首先来看看C++小数位数控制
CCF-201903-1 小中大
代码中认识如何控制小数位数—外加algorithm函数sort()
#include<iostream>
#include<iomanip>
#include<algorithm>
using namespace std
;
const int maxn
=1e5;
int main(){
int n
;
cin
>>n
;
int num
[maxn
];
for(int i
=0;i
<n
;i
++){
cin
>>num
[i
];
}
sort(num
,num
+n
);
if(n
%2==1){
cout
<<num
[n
-1]<<" "<<num
[n
/2]<<" "<<num
[0]<<endl
;
}else{
double mid
=(num
[n
/2-1]+num
[n
/2])/2.0;
int mid2
=(int)mid
;
if(mid
!=mid2
){
cout
<<num
[n
-1]<<" ";
cout
<<fixed
<<setprecision(1)<<mid
<<" "<<num
[0]<<endl
;
}else{
cout
<<num
[n
-1]<<" "<<mid2
<<" "<<num
[0]<<endl
;
}
}
}
我们采用cout<<fixed<<setprecision()就可以控制小数的输出位数了
如何控制有效输出位数呢?
从代码认识
#include<iostream>
#include<iomanip>
using namespace std
;
int main(){
int n
=2;
cout
<<setw(2)<<n
<<endl
;
cout
<<setw(2)<<setfill('0')<<n
<<endl
;
}
结果
总结
如果要控制小数位数: cout<<fixed<<setprecision(2)<< 这个是控制两位小数 如果要控制有效数位: cout<<setw(2)<<n<<endl; 这个是控制有效数位为2 cout<<setw(2)<<setfill(‘0’)<<n<<endl 这个如果位数不够则补零