C++ 如何从科学记数法转换回来

C++ 如何从科学记数法转换回来,c++,scientific-notation,C++,Scientific Notation,我需要展示科学符号中的一个元素。cout位于几个循环中,设置科学符号后,它会影响程序中的整个cout。 如何切换回常规表示法 这是cout线: cout << "Firing '" << fir << "' Time: " << time << " sec\nCorresponding altitude: " << scientific << alt << endl; cout好的,在设置精度之

我需要展示科学符号中的一个元素。cout位于几个循环中,设置科学符号后,它会影响程序中的整个cout。 如何切换回常规表示法

这是cout线:

cout << "Firing '" <<  fir << "' Time: " << time <<  " sec\nCorresponding altitude: " << scientific << alt << endl;

cout好的,在设置精度之前,可以使用
cout.precision()
将其存储在变量中。使用精度设置为2后,将其重置回使用变量的位置。i、 e.
cout.precision(precision)
假设“precision”是您的变量

例如:

输出:

1.2

1.234

#包括
使用名称空间std;
整数精度;
浮点数=1.234;
内部主(空)
{
精度=计算精度();
计算精度(2);

试试这样的方法:

另见:


您不能在cout行之前定义cout.precision(2),然后输出该行的一部分,然后更改精度cout.precision(10)并输出其余部分。谢谢您提供的详细示例。简单而完美。谢谢
#include <iostream>

using namespace std;

int precision;
float number = 1.234;

int  main(void)
{
  precision = cout.precision();
  cout.precision(2);
  cout << number << endl;
  cout.precision(precision);
  cout << number << endl;
}
cout << "Firing '" <<  fir << "' Time: " << time <<  " sec\nCorresponding altitude: ";
cout << std::scientific << alt << endl;
std::cout << std::defaultfloat; // C++ 11
std::cout.unsetf ( std::ios::floatfield );   // C++ 98