1、浮点数的概念

浮点数也称小数或实数。例如,0.0、75.0、4.023、0.27、-937.198 都是合法的小数。

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

2、测试double数据类型

C标准规定,double类型必须至少能表示10位有效数字,且取值范围至少是10-^37^~10+^37^。

我们用以下代码来测试double类型的特点。

示例

/*

* 程序名:book.c,此程序测试double的特征

* 作者:C语言技术网(www.freecplus.net) 日期:20190525

*/

#include

int main()

{

double ff2=9.9; // 测试2位的浮点数

printf("ff2=%lf\n",ff2);

if (ff2==9.9) printf("ff2与9.9相等。\n");

double ff12=999999999.99; // 测试12位的浮点数

printf("ff12=%lf\n",ff12);

if (ff12==999999999.99) printf("ff12与999999999.999相等。\n");

double ff13=9999999999.99; // 测试13位的浮点数

printf("ff13=%lf\n",ff13);

if (ff13==9999999999.99) printf("ff13与9999999999.999相等。\n");

double ff14=99999999999.99; // 测试14位的浮点数

printf("ff14=%lf\n",ff14);

if (ff14==99999999999.99) printf("ff14与99999999999.999相等。\n");

double ff15=999999999999.99; // 测试15位的浮点数

printf("ff15=%lf\n",ff15);

if (ff15==999999999999.99) printf("ff15与999999999999.999相等。\n");

double ff16=9999999999999.99; // 测试16位的浮点数

printf("ff16=%lf\n",ff16);

if (ff16==9999999999999.99) printf("ff16与9999999999999.999相等。\n");

double ff17=99999999999999.99; // 测试17位的浮点数

printf("ff17=%lf\n",ff17);

if (ff17==99999999999999.99) printf("ff17与99999999999999.999相等。\n");

double ff18=999999999999999.99; // 测试18位的浮点数

printf("ff18=%lf\n",ff18);

if (ff18==999999999999999.99) printf("ff18与99999999999999.999相等。\n");

}

运行效果

从程序的运行我们可以看出double数的两个特征:

1)double数据类型表达的也是一个近似的数,不是准确的,小数点后的n位有误差,浮点数的位数越大,误差越大,到18位的时候,误差了1,基本上不能用了。

2)用“==”可以比较两个double数值是否相等。

3、应用经验

float浮点型的精度最多只有8位,并且不能用==判断两个浮点数是否相等,在实际开发中,弃用float,只使用double型就可以了。

4、版权声明

C语言技术网原创文章,转载请说明文章的来源、作者和原文的链接。

作者:码农有道

如果这篇文章对您有帮助,请点赞支持,或在您的博客中转发此文,让更多的人可以看到它,谢谢!!!

c语言变量类型double,C语言double数据类型介绍、示例和应用经验相关推荐

  1. c语言变量类型int,C语言基础学习基本数据类型-int类型与int变量

    C++学习笔记26:泛型编程概念 一.什么是泛型编程? 泛型就是通用的型式 编写不依赖数据对象型式的代码就是泛型编程 二.为什么需要泛型编程? 函数重载,相似类定义与型式兼容性 例如:设计函数,求两个 ...

  2. C语言删掉无关变量无输出,C语言变量类型与输出控制用法实例教程

    本文实例讲述了C语言变量类型与输出控制用法,有助于读者很好的对其进行总结与归纳.该实例分享给大家供大家参考借鉴之用.具体如下: 完整实例代码如下: /************************* ...

  3. c语言变量类型和范围_C变量和类型

    c语言变量类型和范围 C is a statically typed language. C是一种静态类型的语言. This means that any variable has an associ ...

  4. 重命名变量类型名c语言,C语言命名规范-SEK-101022.doc

    C语言命名规范-SEK-101022,c语言命名规范,c语言变量命名规范,c语言函数命名规范,c语言变量命名规则,c语言标识符命名规则,c语言命名规则,c语言函数命名规则,c语言重命名文件,c语言变量 ...

  5. python语言的变量类型_Python语言变量类型基础学习

    本文主要向大家介绍了Python语言变量类型基础学习,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. Python基本语法1.定义常量: 之前定义变量没有一起介绍定义常量,是因为P ...

  6. 1.C语言变量类型、全局变量、局部变量

    变量类型 char         1字节 short        2    2^16-1 = 65535 int            4 long         4/8 float      ...

  7. C语言变量类型及其表示范围

    一般来说,基本数据类型分为整型.浮点型.字符型,C++中又包括布尔型.每种类型里面又可以分为若干种类型(为了方便记忆,只列出常用的).如下列出了四种基本数据类型. 四种基本数据类型   类型 取值范围 ...

  8. c语言字母的范围,C语言变量类型及其表示范围

    一般来说,基本数据类型分为整型.浮点型.字符型,C++中又包括布尔型.每种类型里面又可以分为若干种类型(为了方便记忆,只列出常用的).如下列出了四种基本数据类型. 四种基本数据类型 类型 取值范围 大 ...

  9. c语言变量加常量,C语言(二)---常量与变量(示例代码)

    一.进制 1.1 二进制 1.1 简介 二进制数据是用0和1两个数码来表示的数.它的基数是2,进位规则是"逢二进1",借位规则是"借一当二".当前的计算机系统使 ...

  10. c语言变量名下表,C语言变量名命名规则

    一.程序风格: 1.严格采用阶梯层次组织程序代码: 各层次缩进的分格采用VC的缺省风格,即每层次缩进为4格,括号位于下一行. 要求相匹配的大括号在同一列,对继行则要求再缩进4格.例如: 2.提示信息字 ...

最新文章

  1. matlab求微分方程的系数,如何利用matlab求解矩阵系数的二阶微分方程
  2. 你就是你自己paper最好的审稿人:宾大苏炜杰提出peer review新机制
  3. 深圳有哪些牛批的互联网公司?
  4. 关闭swap的危害——一旦内存耗尽,由于没有SWAP的缓冲,系统会立即开始OOM
  5. 转载一个不错的Scrapy学习博客笔记
  6. 【Python学习】内置函数(不断更新)
  7. 支付窗开发实战-张代浩-专题视频课程
  8. java sql update用法_使用if else条件将SQL UPDATE语句转换为php(codeigniter)
  9. C#如何将两个List集合合并
  10. datagrid不显示 easy_[Easy UI ]DataGrid 首次进入页面时,不加载任何数据
  11. [R语言绘图]plot函数的使用
  12. 计算机桌面的任务栏,计算机桌面出现两个任务栏怎么办?
  13. Libcef源码下载与编译
  14. C++ class 和 struct 构造函数
  15. 在Ubuntu 18.04上畅玩 Cataclysm: Dark Days Ahead:大灾变!
  16. 论文查重率多少合格?
  17. layui 读取本地excel内容_layui-excel
  18. 国外停课后上百个教育网站官宣免费,亲测后发现这10个在国内秒打开!
  19. Java、JSP酒店餐饮管理系统的设计与实现
  20. 10分钟弄懂微应用框架——乾坤,真香!

热门文章

  1. web前端(21~45)
  2. 什么是uni-app?为什么要学习uni-app?
  3. C#之MySql删除
  4. jquery 动态拼接数据设置点击事件
  5. 自然语言处理前沿研究之细粒度情感分析
  6. IceCTF 2016
  7. unity中瞄准倍镜效果和源码
  8. ubuntu 系统crontab定时操作PHP
  9. 坚持学习100天:计算器,continue
  10. 未来汽车产业新生态高峰论坛在深圳举行