❶ c语言怎么四舍五入
利用取整。
比如 四舍五入到千分位,可以
(int)(x*1000+0.5)/1000.0
十分位(int)(x*10+0.5)/10.0
其他类似,只改变其中倍数的值即可。
❷ c语言编程~如何四舍五入
如果只是要求输出结果“四舍五入”,只要通过输出格式符控制即可。
例如:
double pi=3.1415926;
printf("%.4lf\n",pi);
可得输出为3.1416。
printf("%.2lf\n",pi);
可得输出为3.14。
如果是要把变量本身的值四舍五入到4位小数,则可以这样处理:
double pi=3.1415926;
pi=((int)(pi*10000+0.5))/10000.0;
❸ c语言中的四舍五入怎么做
利用取整运算的截断特点实现。
比如:int a=0.75;取整后赋值给a的是0,小数点后面的被截断了。
如果要做整数的四舍五入,那么可以:a=(int)(0.75+0.5);取整后得到的与数学中四舍五入的结果一致,都是1;
如果要进行小数点后面的四舍五入,可以这样计算:
要保留小数点后面两位的小数,即在小数点后面两位上做四舍五入,0.756
float a=0.756,b; int x; b=a*100; b+=0.5; x=b; b=x/100;
运算是这样的:先将0.756乘以100,得到75.6,然后利用取值运算的截断做四舍五入,75.6+0.5=76.1取整后等于76,再除以100,得到结果:0.76
❹ c语言中怎么四舍五入
设 float x ; int y ; 则有y=(int)(x+0.5)>(int)x?(int)x+1:(int)x进行上述运算后,y 的值就是 x 四舍五入的结果。
❺ c语言四舍五入是怎样的
全舍不入
需要实现四舍五入的时候就要使用double或者float类型的数进行运算然后if判断
http://..com/question/68502540.html刚好有个类似的问题
❻ c语言四舍五入
#include<stdio.h>
main()
{
double a;
printf("清输入一个小数 ");
scanf("%lf",&a);
a=(int)(a*100+0.5);
a=a/100;
printf("输出的四舍五入结果是 %.2f",a);
}
这样就对了,输入格式有错
❼ c语言如何四舍五入 跟 进一法除法 的 算法
#include<stdio.h>
int main()
{int a,b;
scanf("%d%d",&a,&b);
printf("%d/%d(四舍五入)=%d ",a,b,(int)((float)a/b+0.5));
printf("%d/%d(进一法)=%d ",a,b,(int)(float)(a+b-1)/b);
return 0;
}
❽ 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;
}
(8)c语言的除法结果四舍五入扩展阅读:
其他方法实现四舍五入:
int myround(double indata,int precision,double * outdata)
{
long pre = 1,i;
for(i = 0; i <precision; i ++)pre = pre * 10;
if(cy_FloatCompare(indata,0.00)> 0)
* outdata =(int)((indata * pre)+0.5)/100.00;
else
* outdata =(int)((indata * pre)-0.5)/100.00;
return 0;
}
// cy_FloatCompare是浮点数与0比较的函数,假设它存在。返回值与strcmp相同。
❾ c语言的四舍五入
加0.5本来就是个权益之计,使用这个来做四舍五入这不是什么好习惯。
弄得程序乱七八糟的,程序的维护也变得很困难,不定那里漏了个0.5就会导致运算错误。
0.5满天飞的程序,可想而知。
math.h有专门的四舍五入函数,round(x)。