需要精确计算的数学、工程应用,用整数类型不合适。

float类型(单精度浮点类型)

用来存储带小数部分的数据。
在内存中占用4个字节

表示范围:-3.4*1038~+3.4*1038 (不需记忆)
精度:最长7位有效数字(是指7位10进制位)

//精度只能取值到 1.1234568, 在第7位(整数部分不算)是四舍五入后的值。
float  y = 1.123456789;

float类型的存储方式:

符号位:0代表正数,1代表负数
阶码: 指数+127

符号位 尾数 * 2 ^ (阶码-127)

转化过程:(仅做了解)
float x = 13.625;

13.625 的转化:

  • 13 -> 1101
  • 倒除法:

  • 625 -> .101

  • 0.625 * 2 = 1.25 取整 1 ,剩下0.25

  • 0.25 * 2 = 0.5 取整 0 , 剩下0.5

  • 0.5 * 2 = 1 取整 1 ,剩下0

  • 按顺序得到 101(直到小数部分为0)

  • 13.625 => 1101.101

  • 1101.101 小数点向左移动3位 => 1.101101

  • (要求移动到整数部分只有1位)

  • 所以,阶码 = 3 + 127 = 130

  • 二进制形式为:10000010

  • 移位后的小数部分是 .101101

  • 尾数存储二进制的101101

  • 实际存储为:

double类型(双精度浮点类型)

用来存储带小数部分的数据。
8个字节

具体的存储方式和float相似.

表示范围:-1.7*10308~1.7*10308(不需记忆)
精度:最长16位有效数字(是指16位10进制位)

double y = 1.12345678901;

浮点类型的常量
带小数的常量默认都是double类型
3.14 是double类型
3.14f 强制指定是float类型

可以用”科学计数法”表示浮点类型的常量
1.75E5 或 1.75 e5
1.75E5就是1.75乘以10的5次方(100000), 175000.0

注意:
1 是int类型的常量
1.0 是double类型的常量

浮点数据的输出控制

#include <iostream>
#include <Windows.h>using namespace std;int main(void) {double value = 12.3456789;// 默认情况下, 只输出6位有效数字(包含小数点前面的数据)cout << "默认输出: " << value << endl;      // 输出结果 12.3457(最后一位四舍五入)// 指定输出的精度cout.precision(4);  // 包含小数点前面的数据cout << "指定精度: " << value << endl;      // 输出结果 12.35(最后一位四舍五入)// 输出小数点后面指定的精度cout.precision(7);cout.flags(cout.fixed); //定点法cout << "定点输出: " << value << endl;     // 输出结果 12.3456789// 取消定点法cout.unsetf(cout.fixed);cout << "取消定点: " << value << endl;        //输出结果 12.34568system("pause");return 0;
}

C++基础知识 - 浮点类型相关推荐

  1. JS——基础知识--变量类型和变量计算

    提问: JS中使用typeof能得到的哪些类型 何时使用===何时使用== JS中有哪些内置函数 JS变量按照存储方式区分为哪些类型,并描述其特点 如何理解JSON 涉及知识点:(1)变量类型 值类型 ...

  2. JAVA基础知识——包裹类型

    包裹类型 对于基本数据类型,Java提供了对应的包裹(wrap)类型.这些包裹类型将一个基本数据类型的数据转换成对象的形式,从而使得它们可以像对象一样参与运算和传递.下表列出了基本数据类型所对应的包裹 ...

  3. Java基础知识(四) 基本类型与运算

    Java基础知识 基本类型与运算 1. Java提供了哪些基本数据类型 2. 什么是不可变类 3. 值传递与引用传递的区别 4. Math类中的round.ceil和floor方法的功能各是什么 5. ...

  4. [Python学习] 专题五.列表基础知识 二维list排序、获取下标和处理txt文本实例

    通常测试人员或公司实习人员需要处理一些txt文本内容,而此时使用Python是比较方便的语言.它不光在爬取网上资料上方便,还在NLP自然语言处理方面拥有独到的优势.这篇文章主要简单的介绍使用Pytho ...

  5. [C#基础知识系列]专题十七:深入理解动态类型

    本专题概要: 动态类型介绍 为什么需要动态类型 动态类型的使用 动态类型背后的故事 动态类型的约束 实现动态行为 总结 引言: 终于迎来了我们C# 4中特性了,C# 4主要有两方面的改善--Com 互 ...

  6. C# 基础知识 (五).变量类型和字符串处理

            这篇文章是阅读<C#入门经典(Beginning C#)>书籍里面的内容,作者Karli Watson.主要包括自己缺乏的一些C#基础知识和在线笔记使用,文章主要包括C#简 ...

  7. (四)JS基础知识一(深入分析变量类型和计算)【不会变量,别说你会JS】

    JS基础知识一(变量类型和计算) 提问 变量类型 值类型 vs 引用类型 (堆栈模型) 值类型 引用类型 typeof 运算符 深拷贝 变量计算 字符串拼接 == if语句和逻辑运算 if语句 逻辑判 ...

  8. C#基础知识1-深入理解值类型和引用类型

    C#值类型和引用类型这个概念在刚学习的时候应该就知道了.但是我们并没有深入的去理解它.越是基础知识其实才是最有用的.对代码的优化,代码质量的提升都有帮助.通过整理本文章,对很多知识也起到了巩固的作用吧 ...

  9. 关于python的浮点数类型、以下_python入门教程Python 浮点数数据类型详解 [学习 Python 必备基础知识][看此一篇就够了]...

    python基础语法.jpg 您的"关注"和"点赞",是信任,是认可,是支持,是动力...... 如意见相佐,可留言. 本人必将竭尽全力试图做到准确和全面,终其 ...

  10. 1023day5:class类属性方法、每次执行类属性+1、内建模块、时间装饰器wrapper、面向对象__slots__方法:限制类的属性等基础知识、正则表达式基础知识、多态鸭子类型

    文章目录 一.类class 1.Python类class 属性 方法 2.类的构造方法__init__() 3.每次执行一次类的属性+1 二.模块 1.内建模块 2.第三方模块 3.定义自己的模块 三 ...

最新文章

  1. Html5 Canvas 学习之路(一)
  2. mysql 导入超时_sql数据库有1000M怎么导入mysql?导入超时怎么办?
  3. 前端 JS 如何在一个页面中局部加载其它页面的数据
  4. mysql or优化_MySQL 语句优化
  5. pacf和acf_如何通过Wordpress API,ACF和Express.js使Wordpress更加令人兴奋
  6. NI myRIO-1900(ARM9)嵌入式小车2015.8-9
  7. 第二sprint总结
  8. python-opencv有效随机角度旋转
  9. pypdf2 存储pdf_PyPDF2:用于PDF文件操作的Python库
  10. 五子棋游戏代码(完整版)
  11. java飞机大战boos代码_飞机大战 java 源代码
  12. git查看commit提交记录详情
  13. android播放器(music player)源码分析4(StreamStarter,URLEncoder)
  14. 【webrtc0419 点对点视频聊天功能】
  15. ⚡️VR ✙ 深入浅出⚡️ | VR 简单介绍说明
  16. EXSI 中新建虚拟机
  17. model.evaluate与model.predict的不同
  18. How To Insult Your Enemies
  19. facebook营销密码_每日新闻摘要:Facebook想要您的电子邮件密码(否,严重)
  20. 算法-动态规划2图问题-TSP问题

热门文章

  1. Spring Environment全解析
  2. 大屏制作 | 完成一个美观大屏到底多简单?四步完成
  3. 2012年主流U盘启动盘制作工具合集下载
  4. 无法连接 树莓派 网线连接电脑_无显示器通过网线连接笔记本电脑玩转树莓派...
  5. 如何直接通过电脑查看路由器密码
  6. 直链文件上传下载网站分享(一)
  7. 跨域 CORS policy
  8. python爬虫:模拟登录新浪微博并实现cookies保存,详细讲一下rsa
  9. python cls方法_Python 中的 __new__(cls)方法详解
  10. html页面大于号,css中大于号()是什么意思?