C语言 有关浮点数的总结
来源:互联网 发布:php 笛卡尔乘积 编辑:程序博客网 时间:2024/06/05 18:41
1 浮点数是什么? 如何表示?
浮点数也称做实型数据,形式上就是数学中的小数。
浮点型数据有两种表达方式: 一种是用数字和小数点表示的,如123.456; 另一种是用指数方式表示,如1.2e-6 或1.2E-6(1.2*10-6)。
2 有浮点常量和浮点型变量
浮点常量就是带小数点的十进制数,浮点型变量用来存储浮点数据, 有两种类型 单精度变量float 和 双精度变量double。
float类型占4bytes, 取值范围 -3.4E38~~3.4E38, 有效数字一般是7~8位十进制数(因为float的尾数位是23bit,转换成十进制就是7~8位);
double类型占8bytes, 取值范围-1.7E308~~ 1.7E308, 有效数字一般是15~16位十进制数;
3 定义方式和输出格式
float x,y;// x,y为单精度实型
double a,b,c;// a,b,c为双精度实型量
%f 浮点数(包括float和doulbe) 整数部分全部输出,小数部分输出六位,单精度;
%lf 和%f 输出的形式是一样的 , 整数部分全部输出,小数部分输出六位,单精度;
%e(%E) 浮点数指数输出[e-(E-)记数法]
%.5f 保留小数部分5位有效数字
4 浮点数运算标准IEEE 754
IEEE 754是最广泛使用的二进制浮点数算术标准,被许多CPU与浮点运算器所采用。IEEE 754规定了多种表示浮点数值的方式,下面介绍32位二进制的float浮点类型。它被分为3个部分,分别是符号位S(sign bit)、指数偏差E(exponent bias)和小数部分F(fraction),这三部分都是对应二进制码的。
浮点表示的一般形式为(科学技术法规则):R=(S) * (1 + F) * 2e (R:实数 S:正负符号 F:小数部分 e:指数,不同于指数偏差)。
符号位S:占1位,0代表浮点数是正数,1代表浮点数是负数。
指数偏差E:占8位,范围是0~255,e = E - 127,e为正值表明转换成二进制码后,按科学计数法表达时向左移动了e位, 负值表明向右移动了e位。
小数部分F:占23位,实际上是将浮点数转换成二进制码,再按科学计数法表达,将其小数部分存在F上,由于二进制码按科学计数法表达后,只要值不为0,整数部分就必然为1,所以可以省略整数部分。
- C语言 有关浮点数的总结
- 一个有关C语言浮点数保留2位小数的操蛋问题
- C语言 字符串的浮点数转换成浮点数
- C语言浮点数
- c语言浮点数
- C语言 浮点数
- C语言中浮点数的比较
- C语言浮点数的二进制表示
- c语言中浮点数的陷阱
- C语言中浮点数的运算
- 【C语言】得到浮点数的二进制
- C语言:浮点数的存储
- C语言中的浮点数
- C语言浮点数解惑
- C语言 浮点数求和
- 浮点数的总结
- 7_18|C语言|判断浮点数等于0|浮点数的保存形式
- c语言的printf输出浮点数的一些问题
- "MiniHand"蓝牙自动化仿生机械臂小车
- Mysql数据库备份mysqldump: Got error: 1049: Unknown database 'wisechalenge;' when selecting the database
- JavaScript基础
- vmware下linux找不到网卡eth0的解决方法
- 欢迎使用CSDN-markdown编辑器
- C语言 有关浮点数的总结
- hdu2037-区间贪心问题
- WebView简介(联网权限)
- Java swing实现一组图片自动轮播
- Python的select
- hdu 3555 数位dp入门
- Photo Sphere Viewer API
- TensorFlow学习笔记(二):实例数据下载
- hdu 1072 Nightmare