在c语言中如何指定精确到小数点后任意位数??
发布网友
发布时间:2022-04-23 23:37
我来回答
共5个回答
热心网友
时间:2023-10-15 02:29
Note1:
正数 x 四舍五入的技巧:
x --> (int)(x+0.5)
当 x=n+r, 0<=r<1,
若 0<=r<0.5, 则r+0.5<1, (int)(x+0.5)=(int)(n+r+0.5)=n
若 0.5<=r<1, 则1<= r+0.5, (int)(x+0.5)=(int)(n+r+0.5)=n+1
Note2:
举例来说: 若正数要依舍去法精确到小数点後第二位
x --> (int)(x*100)/100 就好.
例如 3.2794 --> (int)(327.94)/100=327/100=3.27
Note3:
举例来说: 若正数要四舍五入精确到小数点後第二位
x*100 四舍五入再除以100 就好
也就是 (int)(x*100+0.5)/100
热心网友
时间:2023-10-15 02:30
#include<stdio.h>
main()
{
double a;
printf("请输入一个需要四舍五入数字:");
scanf("%lf",&a);
double b,c;
b=a*100;
c=b+0.5;
int d;
d=(int)c;
a=d/100.0;
printf("四舍五入得:%.2lf\n",a);
}
这个是精确到两位的,任意位的话都一样了,你改改就好
热心网友
时间:2023-10-15 02:30
输出的时候%m.nf
m表示字符宽度
n标示小数点位数。
你可以用%.3f显示三位小数
热心网友
时间:2023-10-15 02:31
#include <stdio.h>
int main(void)
{
float i = 3.1415;
printf("%.2f"); //.1表示保留一位小数 .2表示保留二位小数
return 0;
}
热心网友
时间:2023-10-15 02:31
菜单栏→格式(菜单)→单位→长度→精度