#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
double a=654.3210456789;
cout<<a<<endl;
cout<<setprecision(9)<<a<<endl;
cout<<setiosflags(ios::fixed)<<setprecision(8)<<a<<endl;
cout<<setiosflags(ios::scientific)<<a<<endl;
cout<<setiosflags(ios::fixed)<<setprecision(3)<<a<<endl;
system("pause");
return 0;
}
结果是
654.321
654.321046
654.32104568
8.00532e-307
8.00532e-307
为什么后面两个会出现这样的结果啊