C语言典型例题19

《C程序设计教程(第四版)——谭浩强》


例题2.7 检查浮点型数据的舍去误差

C语言知识:

浮点数在C语言用有两个类型,有float和double类型,其中double类型的数据精度更高


解题思路:

可以将一个double类型的数据和float类型的数据输入,观察他们的输出情况,从而判断他们的舍去误差

代码:

//《C程序设计教程(第四版)——谭浩强》
//例题2.7 检查浮点型数据的舍去误差//C语言知识:浮点数在C语言用有两个类型,有float和double类型,其中double类型的数据精度更高
//解题思路:可以将一个double类型的数据和float类型的数据输入,观察他们的输出情况,从而判断他们的舍去误差#include <stdio.h>
int main()
{float a;double b;printf("请输入一个浮点数a,用于判断float类型的误差:\n");scanf("%f",&a);printf("请输入一个浮点数b,用于判断double类型的误差:\n");scanf("%lf",&b);//读取 double 类型的输入(注意 %lf)printf("float类型的数据a的输出结果为:\n%f\n",a);printf("double类型的数据b的输出结果为:\n%lf\n",b);return 0;
}

运行过程:

代码运行过程中遇到的问题:

1.scanf格式化符号:在读取double类型的变量时,您使用了%f ,这是不正确的,应该使用 %lf。
2.输出格式:虽然%f在 printf 中是正确的,但通常打印 double 类型的变量时应该使用%lf来强调其类型。
3.浮点数精度:您可能想要展示浮点数的精度误差,而仅仅打印这些数字可能不足以体现。

// 额外:演示浮点数的误差
printf("\n浮点数在计算机内部的存储及其误差示例:\n");
printf("a + 1.0f = %f\n", a + 1.0f);
printf("b + 1.0 = %lf\n", b + 1.0);

4.单精度浮点数变量,只能提供6~7位有效数字,第7位之后的数字不起作用,后面的几位被忽略了。

5.C编译系统把所有浮点数常量都按照双精度处理,分配8字节,这是为了在运算时保持较高的精度。如果不想把浮点型常量按照双精度处理,可以在数值后面加字母f或者F,这样编译系统就会把他们当成单精度浮点数处理,分配4字节。这样,数值范围和有效位数都减小了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3281750.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

根据需求修改el-tab的默认样式

根据需求修改el-tab的默认样式 样式代码&#xff1a; <style lang"scss" scoped>//去掉了最下面的那条线:deep(.el-tabs--card > .el-tabs__header){border-bottom: none}//单独给每一项添加下边框、修改背景色:deep(.el-tabs--card > .el-tabs__heade…

【Golang 面试 - 基础题】每日 5 题(九)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/UWz06 &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏…

redis集群(高可用)

redis集群&#xff08;高可用&#xff09; redis集群的三种模式 主从复制 奇数 3台 1主2从 哨兵模式 3台 1主2从 cluster 集群 6台 生产中&#xff1a;333 9台 主从复制&#xff1a; 和MySQL的主从复制类似&#xff0c;主可以写&#xff0c;写入主的数据通过RDB方式把数据…

ft232 win10驱动

ft232 win10驱动 https://ftdichip.com/drivers/d2xx-drivers/

Qt for MCUs 2.8 LTS已发布

本文翻译自&#xff1a;Qt for MCUs 2.8 LTS released 原文作者&#xff1a;Qt Group高级产品经理Yoann Lopes 我们很高兴地宣布Qt for MCUs 2.8 LTS版本已发布&#xff0c;该版本带来了激动人心的新变化&#xff0c;如GUI的构建模块、构建工具工作流程的改进、对Infineon TRA…

excel如何绘制多列数据的折线图

1.注意表中的数据必须是数据类型的&#xff0c;不能是字符串格式的。如果是用python生成的&#xff0c;需要填充int或者float型的数据。 2.选择数据&#xff08;多列数据的选择&#xff0c;可以按住ctrl键后选中多列&#xff09; 2. 选择插入 3.选择 推荐的图表->所有图表…

PostgreSQL——查询扫描介绍

顺序扫描 概述 顺序扫描&#xff08;Sequential Scan&#xff09;是PostgreSQL中一种基本的数据检索方式&#xff0c;它通过按顺序读取表中的所有页面来查找满足查询条件的记录。这种方式不依赖于索引&#xff0c;因此在某些情况下可能是唯一的选择&#xff0c;尤其是当表没有…

QT:控件圆角设置、固定窗口大小

实现控件圆角度设置//使用的是setStyleSheet方法 //改变的控件是QTextEdit&#xff0c;如果你想改变其他控件&#xff0c;将QTextEdit进行更换 this->setStyleSheet("QTextEdit{background-color:#FFFFFF;border-top-left-radius:15px;border-top-right-radius:15px;bo…

农合生活平台更新升级啦!了解详情戳这里

7月24日&#xff0c;农合生活平台完成了新一轮的版本更新。新版本上线后&#xff0c;农元NYT购买数量将不做限制&#xff0c;优惠券更易得&#xff0c;购物更划算&#xff0c;农元价值升值将进一步「加速度」。 更新说明 1. 数量&#xff1a;旧版本中农元只能定额定量购买&…

Vmware ubuntu22.04 虚拟机 连接windows主机虚拟串口

1.虚拟机配置 鼠标右键点击这个图标&#xff0c;在弹出的菜单里有“连接”或者的“断开连接”的选项&#xff0c;单击即可完成相应的操作。串口连接后图标下侧会出现一个小绿点&#xff0c;断开时没有小绿点。鼠标移动到这个图标上&#xff0c;会显示“串行端口&#xff1a;正在…

找到/打开pupprteer对应chrome版本

前期提要&#xff1a;导出pdf的时候&#xff0c;会用pupprteer启动一个浏览器实例&#xff0c;再打开指定页面进行打印&#xff0c;页面写成什么样&#xff0c;导出的pdf内容就是什么样&#xff0c;听起来很正常。 但是遇到了调试的时候页面显示很正常&#xff0c;而导出的内容…

PostgreSQL——tsearch全文搜索

背景 全文搜索&#xff08;文本搜索&#xff09;提供了一种可以检索出满足某个查询条件的自然语言文档的能力&#xff0c;并且还可以根据文档的相关性对文档进行排序。最常见的搜索是找出所有包含给出的查询词的文档&#xff0c;并且以它们符合查询的程度排序输出。 文本搜索…

Java之Java基础二十(集合[上])

Java 集合框架可以分为两条大的支线&#xff1a; ①、Collection&#xff0c;主要由 List、Set、Queue 组成&#xff1a; List 代表有序、可重复的集合&#xff0c;典型代表就是封装了动态数组的 ArrayList 和封装了链表的 LinkedList&#xff1b;Set 代表无序、不可重复的集…

好多人都找不到这四个提升iPhone音质的技巧

在这个快节奏的时代里&#xff0c;我们每天都在寻找让生活变得更美好的方式。对于iPhone用户而言&#xff0c;无论是享受音乐、观看视频还是接听电话&#xff0c;良好的音频体验无疑是提升日常幸福感的关键之一。 然而&#xff0c;许多人可能不知道他们的设备中隐藏着许多能够…

【WRF数据介绍第一期】静态地理数据介绍及下载

WRF数据介绍第一期&#xff1a;静态地理数据介绍及下载 WRF官网-静态地理数据介绍必选静态数据&#xff08;Mandatory Static Data&#xff09;特定应用的静态数据&#xff08;Static Data for Specific Applications&#xff09;可选静态数据&#xff08;Optional Static Data…

逆天!吴恩达+OpenAI合作出了大模型课程!重磅推出《LLM CookBook》中文版

吴恩达老师与OpenAI合作推出的大模型系列教程&#xff0c;从开发者在大型模型时代的必备技能出发&#xff0c;深入浅出地介绍了如何基于大模型API和LangChain架构快速开发出结合大模型强大能力的应用。 这些教程非常适合开发者学习&#xff0c;以便开始基于LLM实际构建应用程序…

一句JS代码,实现随机颜色的生成

今天我们只用 一句JS代码&#xff0c;实现随机颜色的生成&#xff0c;首先看一下效果&#xff1a; 每次刷新浏览器背景颜色都不一样 实现此效果的JS函数 &#xff1a; let randomColor () > ...: 定义一个箭头函数randomColor&#xff0c;用于生成一个随机颜色。 Math.ra…

丰田精益生产模式落伍了?揭秘其背后的真相与未来展望

在竞争激烈的全球汽车市场中&#xff0c;丰田汽车公司凭借其独特的精益生产模式&#xff08;Lean Production&#xff09;一直占据着举足轻重的地位。然而&#xff0c;近年来&#xff0c;随着一系列质量丑闻的曝光&#xff0c;如尾气排放测试数据造假等&#xff0c;不禁让人质疑…

我终于搭建完成了我的个人网站!(仅分享,非教程)

先看看我的个人网站~ https://yaoqx.pages.devhttps://yaoqx.pages.dev 来看看我搭建的过程吧&#xff01; &#xff08;仅分享&#xff0c;非教程&#xff09; 网站技术 前端框架&#xff1a;Astro主题&#xff1a;Frosti代码托管&#xff1a;Github网页部署&#xff1a;Cl…