温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

c语言实现double类型默认输出小数几位的方法

发布时间:2020-08-01 10:25:29 来源:亿速云 阅读:624 作者:小猪 栏目:编程语言

这篇文章主要讲解了c语言实现double类型默认输出小数几位的方法,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。

C语言中常用的小数有两种类型,分别是 float 或 double;float 称为单精度浮点型,double 称为双精度浮点型。不像整数,小数没有那么多幺蛾子,小数的长度是固定的,float 始终占用4个字节,double 始终占用8个字节。

c语言double类型默认输出几位小数?

C语言中,输出double类型(双精度实型)以及float类型(单精度实型)时,默认输出6位小数(不足六位以 0 补齐,超过六位按四舍五入截断)。

double a = 1;
printf("%lf\n", a);

输出会是:

1.000000

但是有时六位会显得很长,没必要。比如计算平均分,一到两位小数就足够了。可是有时六位又不够,需要更多位小数,比如计算高精度平方根。这时可以用printf的格式控制。如果要输出n位小数,那么可以用%.nlf的格式。其中n为数字。

如要输出10位小数,那么

printf("%.10lf\n", a);

即可。

内容扩展

小数的输出

小数也可以使用 printf 函数输出,包括十进制形式和指数形式,它们对应的格式控制符分别是:

  • %f 以十进制形式输出 float 类型;
  • %lf 以十进制形式输出 double 类型;
  • %e 以指数形式输出 float 类型,输出结果中的 e 小写;
  • %E 以指数形式输出 float 类型,输出结果中的 E 大写;
  • %le 以指数形式输出 double 类型,输出结果中的 e 小写;
  • %lE 以指数形式输出 double 类型,输出结果中的 E 大写。

下面的代码演示了小数的表示以及输出:

#include <stdio.h>
#include <stdlib.h>
int main()
{
  float a = 0.302;
  float b = 128.101;
  double c = 123;
  float d = 112.64E3;
  double e = 0.7623e-2;
  float f = 1.23002398;
  printf("a=%e \nb=%f \nc=%lf \nd=%lE \ne=%lf \nf=%f\n", a, b, c, d, e, f);
  
  return 0;
}

运行结果:

a=3.020000e-01
b=128.100998
c=123.000000
d=1.126400E+05
e=0.007623
f=1.230024

看完上述内容,是不是对c语言实现double类型默认输出小数几位的方法有进一步的了解,如果还想学习更多内容,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI