关于c语言float取值范围

我看到书上写:float型变量取值范围是-2X2^127~2X2^127也就是-3.4X10^38~3.4X10^38。请问下为什么2能转换成3.42^127能转换成10... 我看到书上写:float型变量取值范围是-2X2^127~2X2^127 也就是-3.4X10^38~3.4X10^38。 请问下为什么2能转换成3.4 2^127能转换成10^38 我到这段看不明白 展开
 我来答
White_MouseYBZ
推荐于2017-09-24 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6638万
展开全部
你的问题好奇怪:2能转换成3.4?没听说过!你只能这么理解:2X2^127和3.4X10^38相等或近似,是分别用二进制幂和10进制幂表示的同一个数。用计算器输入2的128次方,结果就是3.40.....x10的38次方。2x10^2=40x5,不该说2怎么转换成40、10^2怎么转换成5的吧?另外建议不钻这种牛角尖,知道float是4字节,表示 的数有个范围就行了,不然你几天才能看一页啊?以后类似的情况多着呢!
吉祥二进制
高粉答主

推荐于2017-09-01 · 科技改变生活,生活改变科技。
吉祥二进制
采纳数:33926 获赞数:84580

向TA提问 私信TA
展开全部

float的取值范围:1.175494e-038  ~ 3.402823e+038


在C语言中可以使用FLT_MIN和FLT_MAX这两个C语言标准库中定义的宏来来表示float浮点数的最小值和最大值。需要包含头文件float.h。

#include <stdio.h>
#include <float.h>
int main()
{
printf("%e\t%e\n", FLT_MIN, FLT_MAX);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
金色潜鸟
2014-04-08 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:5703万
展开全部
float型变量用32位2进制存放。
按IEEE-754-1985 标准:
1位符号位,8位指数位,23位尾数位。
另规定了 正无穷 和 负无穷 及 NaN 表示法。
float型 数值 范围 是 ±1.18×10^−38 到 ±3.4×10^38

你的编译器 数值类型和数值范围 规定 在 头文件 float.h limits.h 里,可以打开来看。

世界上 所有的计算机都遵循 IEEE-754 标准。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式