【C语言】小白学浮点数

2023-11-12

一、浮点数的概念

浮点数也称小数或实数。 C语言中采用 float 和 double 关键字来定义小数, float称为单精度浮点型,double称为双精度浮点型。

另外,部分编译器支持更大精度的long double,但不是所有的编译器都支持。

二、浮点数的精度

float只能表达6 - 7位的有效数字,不能用“ == ”判断两个数字是否相等。

double能表达15 - 16位有效的数字,可以用“ == ”判断两个数字是否相等。

long double占用的内存有16 字节, 12字节,8字节。 其中16字节占大多数。

就拿我使用的编译器 Visual Studio 2022 来说吧

运行结果 

 由此不难看出,在C语言中,浮点类型的单精度值具有 4 个字节,而double的双精度值具有8个字节,long double类型则是由不同编译器来决定的。

值得一提的是,在C语言中,规定了以下标准:

 float只能表达6 - 7位的有效数字,不能用“ == ”判断两个数字是否相等。

double能表达15 - 16位有效的数字,可以用“ == ”判断两个数字是否相等。

long double表达数据的精度和double相同。

三、浮点数的输出

不同于整型的 %d ,浮点数的输出为 %f 和 %lf 。其中,float类型对应 %f 格式的输出,而double 类型对应 %lf 格式的输出。

在浮点数的输出中,有几点需要注意的:

1.C语言中printf输出float和double都可以用 %f,而double型数据还可以用 %lf。

2.scanf当中若是对双精度的变量(对应double类型)赋值必须是%后跟lf,而printf当中可以用 %f 也可以用 %lf 没有限制。

3.当想要输出小数点后x位小数时,当位数不是很大的时候,通常使用“%.xf”来表示想要输出的数据。

四、浮点数的实际应用

在目前我写代码的过程中,需要用到浮点型的场景一般都是运算过程中,求出结果要保留多少位小数,就好比下图这样

运行结果

 由此可见,当我输出a的时候,由于精度不够,输出只是整型。而当我在运算过程中加入了“.0”后,并没有改变原有数据的大小,而且此时输出就会转化成浮点型了。

这是我第一次写博客,有不足之处还请多指教,我们一起进步!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【C语言】小白学浮点数 的相关文章

  • 【GAMES101闫令琪图形学】作业0(配置开发环境)

    去games101往期作业汇总帖下载作业0的压缩包 作业0是让你配环境的 很简单 操作系统 VirtualBox虚拟机 Ubuntu20 04 比课程提供的虚拟硬盘版本更高 安装eigen和cmake sudo apt get instal
  • UncaughtExceptionHandler 捕获异常线程以及出现异常重启

    1 捕获线程的异常只需要修改Executor产生线程的方式 即为每一个线程添加一个实现了Thread UncaughtExceptionHandler接口的异常处理器来捕获线程发生的异常 出现异常之后在捕捉异常中在重新开启线程即可 例子如下
  • (第十四届蓝桥杯真题)砍树

    样例输入 6 2 1 2 2 3 4 3 2 5 6 5 3 6 4 5 样例输出 4 分析 由于题目中说明这个图是一棵树 所以任意两点之间的路径都是唯一的 那么我们要想使得u和v在不同的连通块中 我们只需要将其两点之间路径上的任意一条边删

随机推荐

  • MySQL • 源码分析 • SHUTDOWN过程

    摘要 ORACLE 中的SHUTDOWN MySQL SHUTDOWN LEVEL 暂时只有一种 源码中留了 LEVEL 的坑还没填 在此借用 Oracle 的 SHUTDOWN LEVEL 分析 Oracle SHUTDOWN LEVEL
  • WinSCP 与 Putty 中文显示乱码解决方法

    WinSCP 1 打开WinSCP 在登录会话界面中选定将要登录的会话 2 2 点击旁边的 编辑 按钮 3 3 在左侧树型菜单中找到 环境 项 并打开它 4 4 在右侧中一项为 文件名UTF 8编码 选择 开启 5 5 搞定 Putty 1
  • 【转载】设备\Device\Harddisk0\D 有一个不正确的区块

    http blog sina com cn s blog 5adb84f80100d3fs html 近一阵子 每次早晨一开机 便进不了系统 偶尔还蓝屏一下 代码为0x0000218 stop类的 开箱清洁一下 拔拔插插 过一会儿又可以进去
  • Tag:input type='file' 的文件长度问题

    http www cnblogs com rickel archive 2005 06 21 178385 html Q 發現一個現象 對於上傳文件時用到的標簽
  • leetcode(1) 两数之和

    题目描述 给定一个整数数组 nums 和一个目标值 target 请你在该数组中找出和为目标值的那 两个 整数 并返回他们的数组下标 你可以假设每种输入只会对应一个答案 但是 你不能重复利用这个数组中同样的元素 示例 给定 nums 2 7
  • flutter imagepicker点击不了

    参考 already active 图像选取器已处于活动状态 null null 将Gradle版本降级为 classpath com android tools build gradle 3 5 4
  • C# 入门级教程网站

    http m biancheng net view 3026 html 记录一下 需要查询资料的时候就去检索一下
  • Matlab使用记录1-波形

    1 正弦波 清内存 关闭窗口 准备工作 clear close all clc signal 三要素 A 5 amplify f 2 Hz w 2 pi f rad s p 0 rad 采样 T 1 s 观测时间 fs 20 f Hz 采样
  • shell脚本中 set -ex

    刚刚学会了一个很实用的shell命令set ex 在这里分享一下 set e 先说说set e 这个参数的含义是 当命令发生错误的时候 停止脚本的执行 通常来说 我们会习惯于使用 来实现这样的功能 比如 echo 1 rm non exis
  • computed和watch的区别?(Vue面试题)

    有两种答法 大家自行参考 也可以结合起来 第一种 conputed 能完成的功能 watch 都可以完成 watch 能完成的功能 computed 不一定能完成 例如 watch 可以进行异步操作 两个重要的小原则 所有被 Vue 管理的
  • 用Java实现扑克牌游戏——简易炸金花

    一 思想呈现 首先 我们需要创建扑克牌 用字符串型定义扑克牌的花色 用整数型定义扑克牌上的数字 便于扑克牌的保存 再通过构造方法产生对应的对象 对外提供getter和setter方法便于使用 然后重写方法 使结果返回对应的花色与数字 接着来
  • 谷歌翻译网址

    个人总结的几个谷歌工具直连地址 http translate google cn hl zh CN http translate google cn http translate google cn hl cn
  • k8s集群nfs网络持久卷存储实现

    1 nfs介绍和作用 nfs卷能将 NFS 网络文件系统 挂载到Pod 中 不像 emptyDir 那样会在删除 Pod 的同时也会被删除 nfs卷的内容在删除 Pod 时会被保存 卷只是被卸载 2 pv和pvc介绍 pv持久卷是集群中的一
  • C语言学习笔记(二)————数据类型相关,单双引号区别

    1 c语言中的数据类型及输出 常用的几种数据类型 输出格式 int 整型 占用4字节 d 打印整型 short 短整型 占用2字节 hd 打印short类型 d也可以 long 长整型 Windows为4字节 也可以理解32位编译器中占4字
  • cookie实现记住密码

    一 什么是Cookie cookie是一种WEB服务器通过浏览器在访问者的硬盘上存储信息的手段 Cookie的目的就是为用户带来方便 为网站带来增值 虽然有着许多误传 事实上Cookie并不会造成严重的安全威胁 Cookie永远不会以任何方
  • 舆情&传染病时空分析文献阅读笔记

    1 朱炤瑗 秦昆 关庆锋 罗萍 姚博睿 漆林 周扬 COVID 19期间国家关系交互网络时空分析研究 J 地理与地理信息科学 2022 38 01 15 22 研究问题 COVID 19疫情不断蔓延为国际政治 外交关系等带来深刻影响 目前基
  • React-学习笔记(4-组件生命周期)

    1 旧 的生命周期函数 9个 初始化时调用的生命周期函数 初始化由 ReactDOM render 引发 constructor 就是类的构造器 最早执行的 一生只执行一次 UNSAFE componentWillMount 将要挂载 一生
  • Python爬虫入门 Urllib库的基本使用

    1 分分钟扒一个网页下来 怎样扒网页呢 其实就是根据URL来获取它的网页信息 虽然我们在浏览器中看到的是一幅幅优美的画面 但是其实是由浏览器解释才呈现出来的 实质它是一段HTML代码 加 JS CSS 如果把网页比作一个人 那么HTML便是
  • Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile

    程序报错 Failed to execute goal org apache maven plugins maven compiler plugin 2 3 2 compile 原因是缺少maven compiler plugin插件 在p
  • 【C语言】小白学浮点数

    一 浮点数的概念 浮点数也称小数或实数 C语言中采用 float 和 double 关键字来定义小数 float称为单精度浮点型 double称为双精度浮点型 另外 部分编译器支持更大精度的long double 但不是所有的编译器都支持