C语言学习(十)C语言中的小数

您所在的位置:网站首页 整数小数英语怎么写 C语言学习(十)C语言中的小数

C语言学习(十)C语言中的小数

2023-08-13 16:23| 来源: 网络整理| 查看: 265

C语言学习(十)C语言中的小数 小数的表示方式

小数分为整数部分和小数部分,他们之间用点号.分隔,如0.0、7.5、4.098、0.27、-987.333等都是合法小数,这是最常见的小数形式,我们称为十进制形式。

此外,小时也可以采用指数形式,如3.2x103、0.0345x106、100.2323x10-6等。

C语言同时支持以上两种小数形式。

C语言中小数的指数形式为:

aEn 或 aen 其中a为尾数部分,是一个十进制的数字。n为指数部分,是一个十进制整数。e或者E是一个固定字符,用于分隔尾数和指数部分,整个表达式相当于ax10n

C语言中小数的类型

通常有两种类型,分别是float和double。float称为单精度浮点型,double称为双进度浮点型。

在C语言中,小数的长度是固定的,这点和整数完全不同。float始终占用4个字节,double始终占用8个字节。

小数的输出

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

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

例:

#include #include 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

代码说明:

%f和%lf默认保留六位小数,不足六位以0补齐,超过6位按四舍五入截断。将整数赋值给float变量时会变成小数以指数形式输出小数时,输出结果位科学技术法(0 float f = 251; int w = 19.427; int x = 92.78; int y = 0.52; int z = -87.27; printf("f = %f, w = %d, x = %d, y = %d, z = %d\n", f, w, x, y, z); return 0; }

运行结果:

f = 251.000000, w = 19, x = 92, y = 0, z = -87

如果需要更加深入的从底层了解小数,或者你想知道小数在内存中是如何存在的,请参考小数在内存中是如何存储的?定点数与浮点数各自的优势在哪?规格化浮点数与非规格化浮点数又表示什么?



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3