C语言中常用的小数有两种类型,分别是float或double;float称为单精度浮点型,double称为双精度浮点型。
不像整数,小数没有那么多幺蛾子,小数的长度是固定的,float始终占用4个字节,double始终占用8个字节。
c语言double类型默认输出几位小数?
C语言中,输出double类型(双精度实型)以及float类型(单精度实型)时,默认输出6位小数(不足六位以0补齐,超过六位按四舍五入截断)。
doublea=1; printf("%lfn",a);
输出会是:
1.000000
但是有时六位会显得很长,没必要。比如计算平均分,一到两位小数就足够了。可是有时六位又不够,需要更多位小数,比如计算高精度平方根。
这时可以用printf的格式控制。如果要输出n位小数,那么可以用%.nlf的格式。其中n为数字。
如要输出10位小数,那么
printf("%.10lfn",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=%enb=%fnc=%lfnd=%lEne=%lfnf=%fn",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语言C++编程!弯道超车,快人一步!笔者这里或许可以帮到你~
欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!
编程学习:
文章来源: 博客园
- 还没有人评论,欢迎说说您的想法!