㈠ c语言 四舍五入
将 printf("%lf",&a);
改为 printf("%.2f",a);
其中 %.2f 是控制输出的语句,表示输出时小数点后保留两位数。如果计算结果的小数点后的数位大于二则四舍五入,小数点后保留两位;若计算结果小数后没有达到两位,则输出时补零,所以输出的结果小数点后仍然有两位数。
而“&”用在输入输出语句中表示取地址,
而且只能用在输入时,表示取你要赋值的变量的地址,从而将你所输入的值传递给你要赋值的变量,而上面用在输入时显然是错的
㈡ c语言中怎么四舍五入
设 float x ; int y ; 则有y=(int)(x+0.5)>(int)x?(int)x+1:(int)x进行上述运算后,y 的值就是 x 四舍五入的结果。
㈢ c语言中如何进行四舍五入,求详细解释!!谢谢!
方法一:
#include<stdio.h>
int main()
{
double d1,d2,d3;
d1=-3.1415926;
d2=(int)(d1*10+0.5)*0.1;
printf("d1=%f,保留一位小数的结果为:%.1f ",d1,d2);
d3=(int)(d1*1000+0.5)*0.001;
printf("d1=%f,保留三位小数的结果为:%.3f",d1,d3);
总结四舍五入保留n为小数
(int)(x*10的n次方+0.5)*10的负n次方;
其次这个方法对负数无效;如果非要用可以先取正数部分算,最后加上负号
}
方法二:
使用round()函数。
#include"stdio.h"
#include"math.h"
void main()
{
float x;
scanf("%f",&x);
int y = round(x);
printf("%d",y);
}
(3)c语言中如何可以四舍五入扩展阅读:
C语言编写注意事项:
1、%运算符不能应用与float或double类型。
2、char类型转换为int型时, 无法判断它是signed还是unsigned.这样其结果有可能为负数, 因此转换时尽量指定signed和unsigned限制符。
3、++i与i++不同之处: ++i是先+1在使用, i++是先使用i在递加1。
4、三元运算符"?:" 第一个表达式的括号不是必须的,但是由于三元表达式的优先级非常低,我们还是将第一个表达式用()括起便于阅读和理解。
5、C语言中可以使用递归 (即函数调用自身函数), 其不节省储存器开销也不加快执行速度, 只是使程序紧凑便于理解。
㈣ 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语言问题,这里怎么实现四舍五入的啊
假定一个数字x值是10.456,那么保留两位,第三位四舍五入的方法就是先将x乘以100,变成1045.6,然后加上0.5,得到1046.1,然后去除1046.1的小数部分(也就是强制转为int),得到1046,再用1046除以100.0就得到最终的10.46,写出来也就是
x=(int)(x*100+0.5)/100.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;
}
(6)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语言怎么四舍五入
利用取整。
比如 四舍五入到千分位,可以
(int)(x*1000+0.5)/1000.0
十分位(int)(x*10+0.5)/10.0
其他类似,只改变其中倍数的值即可。
㈧ C语言中如何对浮点数进行四舍五入
C语言中对于浮点数输出的四舍五入是自动进行的。在浮点数的有效位数范围内,当要求保留小数点后n位时,系统会自动根据第n+1的值自动进行四舍五入操作。以下代码可以验证:
//#include"stdafx.h"//Ifthevc++6.0,withthisline.
#include"stdio.h"
intmain(void){
doublepi=3.141592653589793;
printf("%.15f ",pi);
printf("%.3f ",pi);//保留3位小数,因第4位是5而进位
printf("%.5f ",pi);//保留5位小数,因第6位是2而舍弃
return0;
}
输出是:
3.141592653589793
3.142
3.14159
㈨ c语言四舍五入是怎样的
C语言没有四舍五入,只有全舍不入,即浮点型转整型时直接去掉小数位,保留整数位。
㈩ 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;
}
拓展资料
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。