C语言 如何实现保留三位小数,第四位四舍五入的程序,详细解释一下程序,网上的看不懂

请问一下,C语言 如何实现保留三位小数,第四位四舍五入的程序,详细解释一下程序,网上的看不懂
最新回答
﹎梦醒的夏天╰╯

2024-10-14 08:45:46

你输入'65'错误是因为,''里面表示的是单个字符,而这里有两个字符的。
要想这样写,必须写成'\65'.
第四位四舍五入
number=(number*1000+0.5)/1000;
保留三位有效数字:
printf("四舍五入后为:%.3f\n",number);
诗雨伊意

2024-10-14 09:03:01

#include<stdio.h>
int main()
{
float number=0.0;
printf(" 输入一个含万分位的小数:");
scanf("%f",&number);
number=(number*1000+0.5)/1000;
printf("四舍五入后为:%.3f\n",number);
return 0;
}
单个字符错误的形式:'65' 65里面有两个字符了 6和5.
月色染红颜

2024-10-14 09:23:36

乘1000
加0.5取整
再除1000
清几何

2024-10-14 08:28:20

大部分小数不能精确存储,这个你应该知道
所以讨论四舍五入不太现实,即使乘以1000加上0.5再除以1000,要是多打印几个小数,那么也会出现一个近似的值


float a=7.9;
printf("%.6f",a);
得到的结果可能是7.899999

所以准确的做法是变成字符串,这样最精确,呵呵