C语言把小数精确到后一位:比如: floati=12.34;i=(int)((i*10)+0.5)*0.1;这个为什么要加(int)?... float i = 12.34; i = (int)((i*10)+0.5)*0.1;这个为什么要加(int)? 展开 我来答 分享 新浪微博 QQ空间 9个回答 #热议# 生活中有哪些成瘾食物? cdyzxy 科技发烧友 2019-09-20...
以此为基础,我们就可以进行其他小数点后n位数的保留.如对上面329.835保留两位小数 我们则可将其先乘以100转化为32983.5后再重复上面的+0.5的取整法,转化完后再/100.0即可;【回答】
用定点格式。float 型 %.2f 就是小数2位, %.1f 就是小数1位。double 型 用 %.2f 就是小数2位, %.1f 就是小数1位。double 型 用 %.2lf 就是小数2位, %.1lf 就是小数1位。
printf()函数会根据格式要求,自动对float类型小数进行四舍五入的,比如代码,//打印float类型,保留小数点后一位 include <stdio.h> int main(int argc, char *argv[]){ float x=10.46;printf("x=%.1f\n",x);//x=输出10.5 return 0;} printf()函数会根据格式要求(%.nf)自动对float...
float以10进制只有7个有效数字,如果你存的数大于7位那么一定会不准确,小于7位的就准确,其实float只有前7位有意义,有时会只有6位有意义。。。 也就是说你只用用7-整数位数就行,如果整数位为0,那么你只需要7+第一个不是0的小数所在位置即可,即此时小树位数是大于7的,但有效数字个数仍然是7...
需要注意的是:“/”,对两个整型数据做除法运算,得到的永远是整数(结果相当于取整)这里20/3=6,等式相当于:i=l=f=d=6,右边赋值给左边,i,l都是整型,所以还是6,f,d都是浮点数,所以是6.0
float a = 3.1415926;float d;d = a - (int) a; // 用这个计算取得小数点后的数 printf("%f %f\n",a, d );
分析如下:一种简单的办法是直接强制转换到int型就是整数部分。减去这个int型就是小数部分了。代码如下:float n=12.223;int x=(int)n;float y=n-(float)x;得出的x为数据的整数部分,y为数据的小数部分。
一种简单的办法是直接强制转换到int型就是整数部分。减去这个int型就是小数部分了。代码如下:float n=...
应该改为print("% .1 f",x),——(1的前面有个小数点)表示输出精确到小数点后1位。如果实际数字不足1位,则在末尾补0,若大于1位,则按四舍五入取前一位。具体实现方法见下例:float x = 3.1415926;printf("%.1f", x); // 输出结果为3.1。