C++里 要使输出的变量都保留小数点后1位 该怎么限制

比如这样cout<<"T"<<temperature<<endl;temperatrue这个变量本来是个可能有很多小数位的double类型数据,让它最后显示的时候只保留一... 比如这样 cout<<"T "<<temperature<<endl;
temperatrue这个变量本来是个可能有很多小数位的double类型数据,让它最后显示的时候只保留一位,怎么限制
setprecision(1)这个只限制它后面的一个变量还是对之后cout的所有变量都限制
如果只限制一个就OK了
如果对之后所有的变量都限制为了保留一位,那么怎么样才能恢复成系统默认的
展开
 我来答
小肥肥2
高粉答主

2018-12-05 · 醉心答题,欢迎关注
知道答主
回答量:50
采纳率:100%
帮助的人:9825
展开全部

在输出前面加上 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++的语言基础

整型

整数常量

整数常量是不带小数的数值,用来表示正负数。例2—2中Ox55、0x55ff、1000000都是c++语言的整数常量。

c++语言的整数常量有三种形式:十进制、八进制、十六迸制。

(1)十进制整数是由不以0开头的0~9的数字组成的数据。

(2)八进制整数是由以0开头的0~7的数字组成的数据。

(3)十六进制整数是由以0x或0x开头的0~9的数字及A~F的字母(大小写字母均可)组成的数据。

例如:

0,63,83是十进制数。

00,077,0123是八进制数。

0x0,Ox0,0x53,0x53,0x3f,0x3f是十六进制数。

整数常量的取值范围是有限的,它的大小取决于此类整型数的类型,与所使用的进制形式无关。

整型变量类型

整型变量类型有byte,short,int,long四种说明符,它们都是有符号整型变量类型。

(1)byte类型。

byte类型说明一个带符号的8位整型变量。由于不同的机器对多字节数据的存储方式不同,可能是从低字节向高字节存储,也可能是从高字节向低字节存储。这样,在分析网络协议或文件格式时,为了解决不同机器上的字节存储顺序问题,用byte类型来表示数据是合适的。

(2)short类型。

short类型说明一个带符号的16位整型变量。short类型限制了数据的存储应为先高字节,后低字节。

(3)int类型。

int类型说明一个带符号的32位整型变量。int类型是一种最丰富、最有效的类型。它最常用于计数、数组访问和整数运算。

(4)long类型。

long类型说明一个带符号的64位整型变量。对于大型计算,常常会遇到很大的整数,并超出int所表示的范围,这时要使用long类型。

<< endl;

return 0;

参考资料来源:百度百科--c++

参考资料来源:百度百科--变量

lgao622
2015-08-12 · 知道合伙人软件行家
lgao622
知道合伙人软件行家
采纳数:1137 获赞数:6549
毕业于武汉工程大学邮电与信息工程学院通信专业,软件行业,4年工作经验。

向TA提问 私信TA
展开全部

在输出前面加上 cout << setiosflags(ios::fixed) << setprecision(1) 就行了,setprecision(1) 就是设置对应的精度,还要加上对应的头文件 #include<iomanip>。

#include <iostream>
#include<iomanip>
using namespace std;

#include <stdio.h>

int main()
{
    double d = 12.5638;
    cout << setiosflags(ios::fixed)
         << setprecision(1)
         << d
         << endl;
    return 0;
}

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jaycnvip
2009-02-16 · TA获得超过767个赞
知道小有建树答主
回答量:998
采纳率:100%
帮助的人:639万
展开全部
setprecision()格式控制只对它后面的第一个变量小数位起限制,如果你有多个的话,只能再写一遍。
建议用数组来存放变量,这样可以用循环输出,不用手动重复了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
uwinb
2009-02-16 · TA获得超过186个赞
知道小有建树答主
回答量:199
采纳率:0%
帮助的人:182万
展开全部
// 注意精度的设置不仅仅只针对一次输出有效,而是针对所有的后续输出
streamsize old = cout.precision();
cout<<fixed<<setprecision(1))<<temperature<<endl;
cout.unsetf(ios_base::fixed);
cout.precision(old); // 恢复原先的精度设置
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6eed2f8
2009-02-16 · TA获得超过5082个赞
知道大有可为答主
回答量:3423
采纳率:0%
帮助的人:3796万
展开全部
#include <iomanip>
cout << setiosflags( ios::fixed | showpoint) << setprecision( 1 )
<< temperatrue << endl;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式