C语言全面细致讲解单双精度float与double的使用方法

 更新时间:2022年05月24日 10:01:10   作者:liao-xin  
C语言中小数的数据类型为 float 或 double:float 称为单精度浮点数,double 称为双精度浮点数。不像整数,小数的长度始终是固定的,float 占用4个字节,double 占用8个字节

一、float与double类型介绍

代码:

#include <stdio.h>
int main (void)
{
	float a=3.14159261111; //单精度浮点型
	double b=3.14159261111; //双精度浮点型
	printf("数值1:%f\n",a);  // 单精度符号%f ,默认保留六位小数
	printf("数值2:%.2f\n",a); // %.2f 保留两位小数
	printf("数值3:%.4f\n",a);// %.4f 保留四位小数
	printf("数值4:%lf\n",b);// 单精度符号%f ,默认保留六位小数
	printf("数值5:%.8lf\n",b);// %.4f 保留八位小数
	return 0;	
}

解释:

1、“double 和 float 的区别是double精度高,有效数字16位,float精度7位(可提供7位或8位有效数字,构成包括符号位、指数位和尾数位)。”

float 超过8位就会乱,错误显示如下

2、开始我们定义一个单精度a,双精度b。

3、然后我们开始输出他们后面的小数,%f 单精度,%lf双精度,两者默认型都是保留6位小数。

4、单精度输出:%.2f ,中间数字是保留几位小数的意思,最好不要超过6.

5、双精度输出:%.8lf,中间数字是保留几位小数的意思,最好不要超过14.

结果:

二、例题

求圆的周长与面积并保留两位小数

代码:

#include <stdio.h>
int main (void)
{
	float pai=3.14; // 定义Π的大小
	float r;  // 定义圆的半径
	float l;  // 定义圆的周长
	float s;  // 定义圆的面积
	printf("请输入圆的半径r:");
	scanf("%f",&r); // 输入圆的半径为多
	s=r*r*pai; // 圆的面积求法
	l=2*r*pai; //圆的周长求法
	printf("圆的面积为:%.2f\n圆的周长为:%.2f\n",s,l);//输出圆的面积和周长 
	return 0;
}

解释:

1、开始定义圆的的半径,周长,面积。

2、用键盘输入圆的半径。scanf("%f",&r) &r不要忘记加进去哈。

3、求圆的周长公式,面积公式。s=r*r*pai; l=2*r*pai;

4、printf("圆的面积为:%.2f\n圆的周长为:%.2f\n",s,l);最后输出结果是需要保留两位小数,别忘记加%.2f

结果:

三、总结

1、float与double都是浮点型,但是他们的精度不一样,需要分清楚。

2、float与double不能同时定义一个变量。

错误示范

到此这篇关于C语言全面细致讲解单双精度float与double的使用方法的文章就介绍到这了,更多相关C语言float与double内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C++11新特性std::make_tuple的使用

    C++11新特性std::make_tuple的使用

    这篇文章主要介绍了C++11新特性std::make_tuple的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • 在c和c++中实现函数回调

    在c和c++中实现函数回调

    如何在c和c++中实现函数回调呢?现在小编就和大家分享一下在c/c++中实现函数回调的示例代码,需要的朋友可以参考下
    2013-07-07
  • C++实操之内联成员函数介绍

    C++实操之内联成员函数介绍

    大家好,本篇文章主要讲的是C++实操之内联成员函数介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • Qt中QPixmap、QImage、QPicture、QBitmap四者区别详解

    Qt中QPixmap、QImage、QPicture、QBitmap四者区别详解

    Qt 提供了四个类来处理图像数据:QImage、QPixmap、QBitmap 和 QPicture,本文就详细的介绍一下四者区别,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • C++实现图片转base64的示例代码

    C++实现图片转base64的示例代码

    Base64就是一种 基于64个可打印字符来表示二进制数据的表示方法,本文主要为大家详细介绍了如何使用C++实现图片转base64,需要的可以参考下
    2024-04-04
  • 二维指针动态分配内存连续问题深入分析

    二维指针动态分配内存连续问题深入分析

    当我们定义一个二维指针时,如果需要存储相应的数据,就需要我们动态的分配内存,这时,有一点是需要注意的,分配内存的方法不同,内存的连续性也是不相同的
    2013-07-07
  • C语言main函数的三种形式实例详解

    C语言main函数的三种形式实例详解

    这篇文章主要介绍了 C语言main函数的三种形式实例详解的相关资料,需要的朋友可以参考下
    2017-06-06
  • C++之多态(内容不错)

    C++之多态(内容不错)

    什么是多态?顾名思义就是同一个事物在不同场景下的多种形态,需要的朋友可以参考下
    2020-01-01
  • C语言实现循环链表

    C语言实现循环链表

    这篇文章主要为大家详细介绍了C语言实现循环链表,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-07-07
  • 如何利用C语言输出3D立体感心形图详解

    如何利用C语言输出3D立体感心形图详解

    其实我们在程序中也有很多乐趣的,只是很多人不善于发现,这篇文章主要给大家介绍了关于C语言输出3D立体感心形图的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2021-12-12

最新评论