首页 > 其他分享 >flotat浮点数类型的误差问题,float a=0.1; 2-a*a*100,和int(2-a*a*100); float的误差问题,

flotat浮点数类型的误差问题,float a=0.1; 2-a*a*100,和int(2-a*a*100); float的误差问题,

时间:2023-11-22 17:23:52浏览次数:39  
标签:误差 int 浮点数 float 0.1 printf 100

来在于洛谷的《深入浅出程序设计竞赛》(基础篇)

#include <stdio.h>

int main(){
	float a=0.1;
	printf("%f %f\n",a,a*a);
	printf("%d\n",int(2-a*a*100));
	printf("%.10f",2-a*a*100);
	return 0; 
}

  执行结果

   原因是这样的,float是浮点数,在执行界面出现的6位小数,是float的有效位,但是float表示的范围不只是6位小数,所以直接输出a的值的时候是四舍五入6位小数没有问题,当进行一个乘法复合运算时,就像int(2-a*a*100),后面的不准确位就可能会影响数据了,造成乘积大于1,使得复合运算的结果是恰好小于1的,所以进行强制类型转换的时候就出现向下取整变成0的问题了。

---

同样的情况还有这个。

 这个原因是两个整型做除法,得到的商也是整型,是先得到一个整型的商,再对商进行强制类型转换,但是0的浮点数还是0.而不是跟设想的一样。

 

标签:误差,int,浮点数,float,0.1,printf,100
From: https://www.cnblogs.com/Azzero/p/17849842.html

相关文章

  • GMK15100-ASEMI光伏二极管GMK15100
    编辑:llGMK15100-ASEMI光伏二极管GMK15100型号:GMK15100品牌:ASEMI正向电流:15A反向耐压:100V封装:批号:2023+引脚数量:2工作温度:-55°C~125°CGMK15100特征:肖特基势垒高二极管;热阻低;正向压降低,功率损耗低隔离包装设计,非常适合散热;高正向电流能力;优异的抗湿性;低调的包装;......
  • GMK10100-ASEMI光伏二极管GMK10100
    编辑:llGMK10100-ASEMI光伏二极管GMK10100型号:GMK10100品牌:ASEMI正向电流:10A反向耐压:100V封装:批号:2023+安装类型:表面贴装型引脚数量:2工作温度:-55°C~150°C类型:光伏二极管GMK10100特性:肖特基势垒高二极管;热阻低;正向压降低,功率损耗低隔离包装设计,非常适合散热;高正......
  • 初中英语优秀范文100篇-004 My English Teacher
    记忆树1MyEnglishteacherisverybeautifulandsheisabout40yearsold.翻译我的英语老师非常漂亮,她大约四十岁。简化记忆漂亮四十岁句子结构主语:MyEnglishteacher(我的英语老师)谓语:is(是)描述性词语:verybeautiful(非常漂亮)年龄信息:about40yearsold(大约四十......
  • 先锋版N100-N200-N305老版本(四个M.2转接板)使用教程
    N100-N200-I3-N305先锋版专用四个M.2接口转接板。4M.2-BIOS下载地址刷机前请确认是不是如下产品,其它主板或拓展板不对情况下勿刷!PS:拓展上面的拔码预留给USB切换的,本次版本不支持USB,所有拔码开关暂时用不上,请勿操作。刷BIOS教程,请安装Ventoy制作U盘启动盘工具,把下载到的BIOS复制......
  • 先锋版N100-N200-I3-N305三选一SATA+M.2 NGFF+mSATA拓展板使用教程
    先锋版N100-N200-I3-N305拓展板3选1功能使用教程3选1BIOS下载地址刷机前请确认是不是如下产品,其它拓展板勿刷!重要提示:3选1拓展版不支持NVMe协议的硬盘,接口不对会烧,请勿插PCIE(NVMe)协议的M.2,通电情况下严禁进行拔码操作,需要拔码换硬盘一定要关机掉拔电源下进行通电情况下严禁进行......
  • 先锋版N100-N200-N305新版本(四个M.2或5个M.2转接板)使用教程
    N100-N200-I3-N305先锋版专用支持五个M.2接口转接板5个M.2-BIOS下载地址刷机前请确认是不是如下产品,其它主板或转接板不对情况下勿刷!产品图片......
  • 初中英语优秀范文100篇-003 My ways of learning English
    记忆树1Asweallknow,Englishisoneofthemostimportantlanguagesintheworld.翻译众所周知,英语是世界上最重要的语言之一简化记忆最重要的语言句子结构"asweallknow"是一个引导从句的短语,在这里引导的是一个句子,提供背景信息。"English"是主语,表示被讨论......
  • 猜0-100的随机数字
    importjava.util.Random;importjava.util.Scanner;publicclassHelloWorld{publicstaticvoidmain(String[]args){//题目生成0-100的随机数字。Randomrandom=newRandom();inti=random.n......
  • 感谢大连交通大学对我司HS-100A恒温恒湿试验箱的认可
    随着科技的发展,各行各业对产品测试的需求日益增长。在这个过程中,恒温恒湿试验箱作为一种重要的测试设备,扮演着不可或缺的角色。近日,我司的HS-100A恒温恒湿试验箱得到了大连交通大学的认可,这标志着我们公司在产品研发和质量控制方面的实力得到了高度肯定。感谢大连交通大学对我司HS-......
  • 关于AD原理图中的Floating Net Label错误
    编译之后提示如下:直接双击错误跳转这是说标签浮空,没有连接到导线上这里将导线和电阻重新连接,就解决了报错还有另外一种常见的错误如下:这是标签没有连接到导线上,放大原理图并选中标签,结果如下标签左下角有个十字,必须将它放到导线上,放完之后即可解决问题(如果不好调整可以......