setprecision(n)
—— 设置“有效数字”或“小数位数”
- 作用:告诉流“保留 k 位”。
- 但到底保留的是“有效数字”还是“小数位数”?取决于 是否配合 fixed(fixed:表示使用定点格式输出)
#include <iomanip> #include <iostream> using namespace std; int main() { int n; cin>>n; float sum=0; for (int i =1; i<=n; i++) { sum += (float)1 / i; //sum += 1.0 / i; } cout<<fixed<<setprecision(6)<<sum; //1 1*2+1/1*2 1*2*3+3+2/1*2*3 //1 3/2 7/6 30/24 //想了半天,原来累加就行了 //fixed<<setprecision(6)控制小数点后六位 //注意强制转换得到浮点数 == 1.0/i } // 64 位输出请用 printf("%lld")