计算机c语言,我想输出一个小数的小数点后五位,要求四舍五入,该怎么办? #include<stdi

计算机c语言,我想输出一个小数的小数点后五位,要求四舍五入,该怎么办?
#include<stdio.h>
main(){
float x;
x=5/3;
printf("%.5f",x);
}

这个样子就可以了。

.5f就是输出四舍五入之后的5位小数的。追问

哦哦,抱歉。说错了,我不要四舍五入

能解答么?

追答

减去0.000005,再printf就可以了呀。

#include<stdio.h>
#include<malloc.h>
 
int main(void)
{
    float x;
    x=(float)5/3;
    x-=0.000005f;
    printf("%.5f",x);
}

追问

减去0.000005,再printf就可以了呀。#include
#include

int main(void)
{
float x;
x=5/3;
x-=0.000005f;
printf("%.5f",x);
}

发错了

可是编译错误哎

追答

我们的工具不一样,就把你的main函数替换一下就行了。
#include
main(){
float x;

x=(float)5/3;
x-=0.000005f;
printf("%.5f",x);
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-03-04
#include "stdio.h"
main()
{
float x,y;int z;
x=5.0/3;
y=x*1000000;
z=y;
z=z%10;
if(z<5)
printf("%.5f",x);
else
{
x=(x*100000+1)/100000;
printf("%.5f",x);
}
}
我用的是Microsoft C++ , 这个软件在运行的时候本身就会在输出小数时四舍五入,因此使用这个软件运行结果有误,这个软件可以直接运行以下程序:
#include "stdio.h"
main()
{
float x;
x=5.0/3;
printf("%.5f",x);
}追问

抱歉,我用的是c

第2个回答  2015-03-04
这是浮点型,(%.0.5*100000+0.5)/100000

...的小数点后五位,要求四舍五入,该怎么办? #include<stdi
这个样子就可以了。.5f就是输出四舍五入之后的5位小数的。

c语言对一个三位小数的数字进行四舍五入怎么编程
四舍五入后小数=(小数*1000%100\/10+1)*0.01+(小数*1000\/100)*0.1

c语言中怎么四舍五入
incloud <stdio> int main(void){ float a ;scanf(“%f”,&a);a=(int)(a*1000+0.5)\/1000.0;printf (“%0.3f”,a);return 0;}

C语言四舍五入的问题
如果你想四舍五入,比方说,想要3.14159,四舍五入取小数点后3位,你可以将3.14159*1000,得到3141.59,然后再加上0.5,得到3142.09,然后再取整(强制转化为INT型),得到3142,然后再除以1000,就得到你想要的小数点后3位的四舍五入了,就是3.142.如果不想要四舍五入,直接截取,就不要加...

C语言四舍五入的问题???
没能正确地做四舍五入是因为有效数字个数超出 double 允许范围,尾部数据不精确了。有效数字少一点时,我的编译器(VC++ 6.0) 好像能做四舍五入。例如:include<stdio.h> include<stdlib.h> main(){ double a,b,c,d;a=1.12345;b=-1.12345;c=1.12344;d=-1.12344;printf("a=%.4lf...

C语言将一个小数四舍五入的问题
(a*100+0.5)\/100都是符点型没进行强制类型转换,就是计算了一下,而(int)(a*100+0.5)\/100.0把浮点型强制类型转换了,从浮点型转换了整形所以可以进行四舍五入

c语言如何四舍五入 跟 进一法除法 的 算法
include<stdio.h> int main(){int a,b;scanf("%d%d",&a,&b);printf("%d\/%d(四舍五入)=%d\\n",a,b,(int)((float)a\/b+0.5));printf("%d\/%d(进一法)=%d\\n",a,b,(int)(float)(a+b-1)\/b);return 0;}

用C语言编程如何实现保留几位小数并对最后一位四舍五入呀?谢谢了
很简单,假如你有一个float型变量a,其值为1.23456,而你只想保留三位小数,也就是希望得到1.235,只需要令:a = (int)(1000.0 * a + 0.5) \/ 1000.0 即可。如果要保留四位小数,就把1000都换成10000,依次类推。

c语言精确小数位数会怎样舍去后面的小数
1、正数x四舍五入的技巧:doublex;x=(int)(x+0.5);2、举例:若正数要依舍去法精确到小数点後第二位;例如6.2367_>(int)(623.67)\/100.0=623\/100.0=6.23 doublex;x=(int)(x*100)\/100.0;\/\/注意是除以100.0;3、举例:若正数要四舍五入精确到小数点後第二位,即x*100四舍五入...

c语言编程序实现:一个带有两位小数的浮点数的四舍五入。怎么做?
其实C语言本来就提供四舍五入的功能,关键是你要输出小数的几位。要输出几位,就在输出时 “ %0.*f” 的 “ * ” 处填多少就行了。O(∩_∩)O~include <stdio.h> int main(){ float a; \/\/定义一个浮点数a scanf("%f", &a); \/\/输入a printf("%0.1f", a); \/\/...

相似回答