C++如何控制输出小数点位数

如题所述

C++在头文件<iomanip>中定义了输出格式控制符,setiosflags(ios_base:fmtflags mask)和setprecision(int n )是其中的两个,前者根据参数mask设定输出格式,后者根据n设定小数的输出位数。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-01-05
#include <iostream.h>
#include <iomanip.h> //要用到格式控制符

void main()
{
double amount = 22.0/7;
cout <<amount <<endl;
cout <<setprecision(0) <<amount <<endl
<<setprecision(1) <<amount <<endl
<<setprecision(2) <<amount <<endl
<<setprecision(3) <<amount <<endl
<<setprecision(4) <<amount <<endl;

cout <<setiosflags(ios::fixed);
cout <<setprecision(8) <<amount <<endl;

cout <<setiosflags(ios::scientific)

<<amount <<endl;

cout <<setprecision(6); //重新设置成原默认设置
}

运行结果为:
3.14286
3
3
3.1
3.14
3.143
3.14285714
3.14285714e+00
第2个回答  2011-01-05
#include<iomanip.h>
然后
cout<<setiosflags(ios::fixed)<<setprecision(n);
就是你要的位数本回答被提问者采纳

c++输出中怎么控制小数点后面的位数?
1、首先,定义三个实数型变量,保存计算的数值。2、接着,给x和y赋值。3、对x和y进行除法运算,保存在变量z中。4、最后,输出变量z的值。5、运行程序,可以看到计算得到的数值,小数点后位数是默认的。6、可以在%之后,添加数值的小数点后位数。7、运行程序,输出实数的小数点后位数,按照设定的值...

c++中如何控制输出小数点后多少位,我这个只能输出有效数字多少位的...
using namespace std;int main()\/\/ 控制小数点右边位数 { double n = 2;cout<< showpoint \/\/总是显示小数点 << setprecision(3)\/\/讲浮点精度设置为n(要#include )< 评论 0 0 加载更多

C++中如何对输出几位小数进行控制
功能:控制输出流显示浮点数的数字个数,可以控制小数点右面的位数头文件: iomanip 例程:include <iostream>#include <iomanip>using namespace std;int main( void ){ const double value = 12.3456789; cout << value << endl; \/\/ 默认以6精度,所以输出为 12.3457 cout << setprec...

C++如何控制小数点的个数
需要使用setprecision方法。使用setprecision(n)可控制输出流显示浮点数的数字个数。C++默认的流输出数值有效位是6。如果setprecision(n)与setiosflags(ios::fixed)合用,可以控制小数点右边的数字个数。setiosflags(ios::fixed)是用定点方式表示实数。 如果与setiosnags(ios::scientific)合用, 可以控制指数...

c++中如何精确输出的位数?
在C++中,要实现这个功能,就要用到std命名空间中常用于流的控制符,这里通常要用到setprecision()函数,可以通过这个函数控制小数点后面位数。还要注意的是,使用它需要加入头文件<iomanip>,这个头文件也好记。io是指in,out,输入输出流,manip是操作的缩写,所以iomanip里面全是输入输出流的操作。代码...

小数点精度的控制——C++
小数点精度控制是C++编程中常遇到的问题。通过使用`cout.setprecision()`和`fixed`,可以有效控制输出的数字长度与小数点位数。在不同IDE环境下,`cout.setprecision(0)`的处理方式有所不同,VS与Dev的差异在于是否对数字长度进行限制。当指定位数超过实际数字位数,VS中不会添加不必要的零,而Dev则会...

如何用C++语言格式控制小数位数
使用setprecision(n)可控制输出流显示浮点数的数字个数。C++默认的流输出数值有效位是6。如果setprecision(n)与setiosflags(ios::fixed)合用,可以控制小数点右边的数字个数。setiosflags(ios::fixed)是用定点方式表示实数。如果与setiosflags(ios::scientific)合用, 可以控制指数表示法的小数位数。setiosflags...

C++里 要使输出的变量都保留小数点后1位 该怎么限制
在输出前面加上 cout << setiosflags(ios::fixed) << setprecision(1) 就行了,setprecision(1) 就是设置对应的精度,还要加上对应的头文件 #include。include include using namespace std;include int main(){ double d = 12.5638;cout << setiosflags(ios::fixed)<< setprecision(1)...

C++中怎么控制小数的位数
include<iostream> include"math.h"include<iomanip> usingnamespacestd;intmain(){ intm;doublen,sum=0;\/\/intqiuhe(inti,intn);cin>>n>>m;\/\/a=n;for(inti=0;i<m;i++){ sum+=n;n=sqrt(n);} cout<<fixed<<setprecision(2)<<sum;\/\/控制小数点后两位输出 return0;} ...

C++--输出:保留两位小数
首先,std::setprecision函数用于控制输出流显示浮点数的有效数字个数,注意,这里的有效数字指的是在小数点后的数字,而不是包括整数部分的总数字个数。如果与std::fixed一起使用,就可以控制小数点后面保留的具体位数。在本例中,由于原始值a=0.20001,直接使用std::setprecision(2)并结合std::fixed后...

相似回答