C语言第六课
第六课
一、数据类型
1.浮点类型
类型 | 字节 | 范围 | 有效数字 |
---|---|---|---|
float | 32 | ±(1.20×10∧-38~3.40×10∧38),±inf,nan | 7 |
double | 64 | ±(2.2×10∧-308~1.79×10∧308),0,±inf,nan | 15 |
类型 | scanf | printf |
---|---|---|
float | %f | %f,%e |
double | %lf | %f,%e |
1 |
|
输出:
1.23456e+05,123456
科学计数法
+1.11e+111
①可选的+或-符号
②小数点也是可选的
③可以用e或E
④符号可以是-或+也可以省略(表示+)
⑤整个词不能有空格
%.af 表示输出小数点后a位,这样的输出是做四舍五入的。
3.超过范围的浮点数和精度
printf输出inf表示超过范围的浮点数:±∞
printf输出nan表示不存在的浮点数
1 |
|
输出:
inf
-inf
nan
若为整数,会编译错误。
无穷大无法用整数来表达,但可以用浮点表达
1 |
|
输出:
不相等! c=2.4679999352,或2.468000
带小数点的字面量是double而非float,float需要用f或F后缀来表明身份
两个浮点数用==判断可能会失败f1 ==f2
用fabe(f1-f2) < 1e-8或1e-12
整数内部是纯二进制,浮点数的内部是编码形式
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Caperilty!