C++基础知识 - 浮点类型
需要精确计算的数学、工程应用,用整数类型不合适。
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++基础知识 - 浮点类型相关推荐
- JS——基础知识--变量类型和变量计算
提问: JS中使用typeof能得到的哪些类型 何时使用===何时使用== JS中有哪些内置函数 JS变量按照存储方式区分为哪些类型,并描述其特点 如何理解JSON 涉及知识点:(1)变量类型 值类型 ...
- JAVA基础知识——包裹类型
包裹类型 对于基本数据类型,Java提供了对应的包裹(wrap)类型.这些包裹类型将一个基本数据类型的数据转换成对象的形式,从而使得它们可以像对象一样参与运算和传递.下表列出了基本数据类型所对应的包裹 ...
- Java基础知识(四) 基本类型与运算
Java基础知识 基本类型与运算 1. Java提供了哪些基本数据类型 2. 什么是不可变类 3. 值传递与引用传递的区别 4. Math类中的round.ceil和floor方法的功能各是什么 5. ...
- [Python学习] 专题五.列表基础知识 二维list排序、获取下标和处理txt文本实例
通常测试人员或公司实习人员需要处理一些txt文本内容,而此时使用Python是比较方便的语言.它不光在爬取网上资料上方便,还在NLP自然语言处理方面拥有独到的优势.这篇文章主要简单的介绍使用Pytho ...
- [C#基础知识系列]专题十七:深入理解动态类型
本专题概要: 动态类型介绍 为什么需要动态类型 动态类型的使用 动态类型背后的故事 动态类型的约束 实现动态行为 总结 引言: 终于迎来了我们C# 4中特性了,C# 4主要有两方面的改善--Com 互 ...
- C# 基础知识 (五).变量类型和字符串处理
这篇文章是阅读<C#入门经典(Beginning C#)>书籍里面的内容,作者Karli Watson.主要包括自己缺乏的一些C#基础知识和在线笔记使用,文章主要包括C#简 ...
- (四)JS基础知识一(深入分析变量类型和计算)【不会变量,别说你会JS】
JS基础知识一(变量类型和计算) 提问 变量类型 值类型 vs 引用类型 (堆栈模型) 值类型 引用类型 typeof 运算符 深拷贝 变量计算 字符串拼接 == if语句和逻辑运算 if语句 逻辑判 ...
- C#基础知识1-深入理解值类型和引用类型
C#值类型和引用类型这个概念在刚学习的时候应该就知道了.但是我们并没有深入的去理解它.越是基础知识其实才是最有用的.对代码的优化,代码质量的提升都有帮助.通过整理本文章,对很多知识也起到了巩固的作用吧 ...
- 关于python的浮点数类型、以下_python入门教程Python 浮点数数据类型详解 [学习 Python 必备基础知识][看此一篇就够了]...
python基础语法.jpg 您的"关注"和"点赞",是信任,是认可,是支持,是动力...... 如意见相佐,可留言. 本人必将竭尽全力试图做到准确和全面,终其 ...
- 1023day5:class类属性方法、每次执行类属性+1、内建模块、时间装饰器wrapper、面向对象__slots__方法:限制类的属性等基础知识、正则表达式基础知识、多态鸭子类型
文章目录 一.类class 1.Python类class 属性 方法 2.类的构造方法__init__() 3.每次执行一次类的属性+1 二.模块 1.内建模块 2.第三方模块 3.定义自己的模块 三 ...
最新文章
- Html5 Canvas 学习之路(一)
- mysql 导入超时_sql数据库有1000M怎么导入mysql?导入超时怎么办?
- 前端 JS 如何在一个页面中局部加载其它页面的数据
- mysql or优化_MySQL 语句优化
- pacf和acf_如何通过Wordpress API,ACF和Express.js使Wordpress更加令人兴奋
- NI myRIO-1900(ARM9)嵌入式小车2015.8-9
- 第二sprint总结
- python-opencv有效随机角度旋转
- pypdf2 存储pdf_PyPDF2:用于PDF文件操作的Python库
- 五子棋游戏代码(完整版)
- java飞机大战boos代码_飞机大战 java 源代码
- git查看commit提交记录详情
- android播放器(music player)源码分析4(StreamStarter,URLEncoder)
- 【webrtc0419 点对点视频聊天功能】
- ⚡️VR ✙ 深入浅出⚡️ | VR 简单介绍说明
- EXSI 中新建虚拟机
- model.evaluate与model.predict的不同
- How To Insult Your Enemies
- facebook营销密码_每日新闻摘要:Facebook想要您的电子邮件密码(否,严重)
- 算法-动态规划2图问题-TSP问题
热门文章
- Spring Environment全解析
- 大屏制作 | 完成一个美观大屏到底多简单?四步完成
- 2012年主流U盘启动盘制作工具合集下载
- 无法连接 树莓派 网线连接电脑_无显示器通过网线连接笔记本电脑玩转树莓派...
- 如何直接通过电脑查看路由器密码
- 直链文件上传下载网站分享(一)
- 跨域 CORS policy
- python爬虫:模拟登录新浪微博并实现cookies保存,详细讲一下rsa
- python cls方法_Python 中的 __new__(cls)方法详解
- html页面大于号,css中大于号()是什么意思?