c语言如何控制小数位数

 我来答
历史小店555
高粉答主

2018-03-30 · 初中历史教学,高中教学课件
历史小店555
采纳数:17274 获赞数:66952

向TA提问 私信TA
展开全部

可以在输出时,指定小数点后的有效位数,实现精确到若干位的效果。
要精确到小数点后若干位,则数据类型为浮点型,可能为单精度(float)或双精度(double)。
在C语言中,使用格式化输出函数printf来实现输出。
输出格式为
%.NF
1 %为格式化字符串的引导字符。
2 .N表示指定显示N位小数。
3 F为类型字符,对于float, F值为f, 对于double,F值为lf。
举例:
1 要输出float a=1.23234; 保留3位小数的写法为:
printf("%.3f",a);
2 输出double b=123.345232; 保留4为小数,写法为:
printf("%.4lf",b);

天云小店
推荐于2017-09-09 · TA获得超过2.8万个赞
知道大有可为答主
回答量:3281
采纳率:91%
帮助的人:784万
展开全部

控制小数位数就是通过输出格式说明符来规定的。

举例说明如下:

float f1=3.1415926;
float f2=1234.1415926;
float f3=124.1;
printf("%3.4f", f1);  // 输出结果为:_ _ 3.1416 ( _ 表示空格)
printf("%3.4f", f2);  // 输出结果为:1234.1416
printf("%3.4f", f3);  // 输出结果为:124.1000

printf("%3.4f", f);中的3是控制f的整数部分按3位的固定位宽输出;4是按四舍五入的准则保留4位小数。

注:如果整数部分不足3位,则在前面补空格,超过3位,则按实际位数输出;如果小数部分不足4,则在后面补0

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
huangluo0722
推荐于2017-10-11 · TA获得超过242个赞
知道小有建树答主
回答量:165
采纳率:0%
帮助的人:172万
展开全部
这个很简单。printf("%.2f\n",x);当然x是float型的。输出就是两位小数。就是在f前+小数点+保留小数的位数。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友a88246e
2011-02-27 · TA获得超过4295个赞
知道小有建树答主
回答量:2221
采纳率:0%
帮助的人:1422万
展开全部
eam>
using namespace std;
int main()
{ float a,b,c;
cout<<"Please input thress numbers:"<<endl;
cin>>a>>b>>c;
cout<<fixed; //这两句是控制输出数据小数位数
cout.precision(4); //这两句是控制输出数据小数位数
cout<<a<<" "<<b<<" "<<c<<endl;
return 0;
}
例子中的cout<<fixed; cout.precision(n);必须出现在输出数据之前。n表示输出要 保留几位小数。如输入:23 输出为23.0000
还有很多用法 无法一一举例
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chiconysun
2011-02-27 · TA获得超过2.2万个赞
知道大有可为答主
回答量:5410
采纳率:92%
帮助的人:2590万
展开全部
默认6位小数,例如输出的格式控制符%7.2f就是符号、整数、小数加上小数点共7位,小数2位,其他类推
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式