C++中,怎样让结果保存两位小数

#include<iostream>usingnamespacestd;floatmain(){floatf,c;cout<<"请输入华氏温度:";cin>>f;c=5*... #include<iostream>
using namespace std;
float main()
{
float f,c;
cout<<"请输入华氏温度:";
cin>>f;
c=5*(f-32)/9;
cout<<"摄氏温度等于:"<<c<<endl;
return 0;
}
展开
 我来答
志远823
2011-03-13 · TA获得超过2296个赞
知道小有建树答主
回答量:913
采纳率:66%
帮助的人:1160万
展开全部
分给楼上的,给你个例子看看
#include <iostream>
#include <iomanip>
using namespace std;
const double d1 = 1.23456789;
const double d2 = 12.3456789;
const double d3 = 123.456789;
const double d4 = 1234.56789;
const double d5 = 12345.6789;
const long l1 = 16;
const long l2 = 256;
const long l3 = 1024;
const long l4 = 4096;
const long l5 = 65536;
int base = 10;
void DisplayDefault( )
{
cout << endl << "default display" << endl;
cout << "d1 = " << d1 << endl;
cout << "d2 = " << d2 << endl;
cout << "d3 = " << d3 << endl;
cout << "d4 = " << d4 << endl;
cout << "d5 = " << d5 << endl;
}
void DisplayWidth( int n )
{
cout << endl << "fixed width display set to " << n << ".\n";
cout << "d1 = " << setw(n) << d1 << endl;
cout << "d2 = " << setw(n) << d2 << endl;
cout << "d3 = " << setw(n) << d3 << endl;
cout << "d4 = " << setw(n) << d4 << endl;
cout << "d5 = " << setw(n) << d5 << endl;
}
void DisplayLongs( )
{
cout << setbase(10);
cout << endl << "setbase(" << base << ")" << endl;
cout << setbase(base);
cout << "l1 = " << l1 << endl;
cout << "l2 = " << l2 << endl;
cout << "l3 = " << l3 << endl;
cout << "l4 = " << l4 << endl;
cout << "l5 = " << l5 << endl;
}
int main( int argc, char* argv[] )
{
DisplayDefault( );
cout << endl << "setprecision(" << 3 << ")" << setprecision(3);
DisplayDefault( );
cout << endl << "setprecision(" << 12 << ")" << setprecision(12);
DisplayDefault( );
cout << setiosflags(ios_base::scientific);
cout << endl << "setiosflags(" << ios_base::scientific << ")";
DisplayDefault( );
cout << resetiosflags(ios_base::scientific);
cout << endl << "resetiosflags(" << ios_base::scientific << ")";
DisplayDefault( );
cout << endl << "setfill('" << 'S' << "')" << setfill('S');
DisplayWidth(15);
DisplayDefault( );
cout << endl << "setfill('" << ' ' << "')" << setfill(' ');
DisplayWidth(15);
DisplayDefault( );
cout << endl << "setprecision(" << 8 << ")" << setprecision(8);
DisplayWidth(10);
DisplayDefault( );
base = 16;
DisplayLongs( );
base = 8;
DisplayLongs( );
base = 10;
DisplayLongs( );
return 0;
}

--------------------------------------------------------------------------------

default display
d1 = 1.23457
d2 = 12.3457
d3 = 123.457
d4 = 1234.57
d5 = 12345.7

setprecision(3)
default display
d1 = 1.23
d2 = 12.3
d3 = 123
d4 = 1.23e+003
d5 = 1.23e+004

setprecision(12)
default display
d1 = 1.23456789
d2 = 12.3456789
d3 = 123.456789
d4 = 1234.56789
d5 = 12345.6789

setiosflags(4096)
default display
d1 = 1.234567890000e+000
d2 = 1.234567890000e+001
d3 = 1.234567890000e+002
d4 = 1.234567890000e+003
d5 = 1.234567890000e+004

resetiosflags(4096)
default display
d1 = 1.23456789
d2 = 12.3456789
d3 = 123.456789
d4 = 1234.56789
d5 = 12345.6789

setfill('S')
fixed width display set to 15.
d1 = SSSSS1.23456789
d2 = SSSSS12.3456789
d3 = SSSSS123.456789
d4 = SSSSS1234.56789
d5 = SSSSS12345.6789

default display
d1 = 1.23456789
d2 = 12.3456789
d3 = 123.456789
d4 = 1234.56789
d5 = 12345.6789

setfill(' ')
fixed width display set to 15.
d1 = 1.23456789
d2 = 12.3456789
d3 = 123.456789
d4 = 1234.56789
d5 = 12345.6789

default display
d1 = 1.23456789
d2 = 12.3456789
d3 = 123.456789
d4 = 1234.56789
d5 = 12345.6789

setprecision(8)
fixed width display set to 10.
d1 = 1.2345679
d2 = 12.345679
d3 = 123.45679
d4 = 1234.5679
d5 = 12345.679

default display
d1 = 1.2345679
d2 = 12.345679
d3 = 123.45679
d4 = 1234.5679
d5 = 12345.679

setbase(16)
l1 = 10
l2 = 100
l3 = 400
l4 = 1000
l5 = 10000

setbase(8)
l1 = 20
l2 = 400
l3 = 2000
l4 = 10000
l5 = 200000

setbase(10)
l1 = 16
l2 = 256
l3 = 1024
l4 = 4096
l5 = 65536
请按任意键继续. . .
百度网友c3b59a2
2011-03-13 · TA获得超过162个赞
知道小有建树答主
回答量:92
采纳率:0%
帮助的人:85.2万
展开全部
#include<iostream>
using namespace std;
float main()
{
float f,c;
cout<<"请输入华氏温度:";
cin>>f;
c=5*(f-32)/9;
cout.precision(3); //输出小数点后两位
cout<<"摄氏温度等于:"<<c<<endl;
return 0;
}
更多追问追答
追问
怎么没用哇?
cout.precision(3);
改成2的话,就变成整数...改成1.,变成指数形式...
追答
#include
#include
using namespace std;
void main()
{
float f,c;
cout>f;
c=5*(f-32)/9;
cout<<setiosflags(ios::fixed)<<cout.precision(2); //输出小数点后两位
cout<<"摄氏温度等于:"<<c<<endl;

}
要保留两位小数的话,那就这样写。如果直接cout.precision(3)是保留三位有效数字。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xxxghostxxxx
2018-03-31 · TA获得超过1536个赞
知道小有建树答主
回答量:5
采纳率:0%
帮助的人:528
展开全部
  1. 用C语言的方法:

    输入printf("%8.2f",a),其中8表示域宽,2就是精度,即保留两位小数,8和2用点隔开。

  2. 设置小数位数法

    cout<<setiosflags(ios::fixed); //这两句都需要cout.precision(2);        //输出小数点后两位cout<<c<<endl;
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-03-13
展开全部
在你的程序上修改如下:
#include<iostream>
void main()
{
float f,c;
cout<<"请输入华氏温度:";
cin>>f;
c=5*(f-32)/9;
c=int(c*100);
c=c/100;
cout<<"摄氏温度等于:"<<c<<endl;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
郁宜似滢滢
2019-02-20 · TA获得超过3772个赞
知道大有可为答主
回答量:3054
采纳率:26%
帮助的人:197万
展开全部
1.
用C语言的方法:
输入printf("%8.2f",a),其中8表示域宽,2就是精度,即保留两位小数,8和2用点隔开。
2.
设置小数位数法
cout<<setiosflags(ios::fixed); //这两句都需要cout.precision(2); //输出小数点后两位cout<<c<<endl;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式