c语言 求助 这个不知道咋填,也没有定义math.h 如何求1e-5 最好解释一下,蟹蟹T_T<>

Python018

c语言 求助 这个不知道咋填,也没有定义math.h 如何求1e-5 最好解释一下,蟹蟹T_T<>,第1张

你这从哪看的教材啊,main也没有返回值,就算现在不提倡用void作为main函数的返回值,也至少有个void返回类型啊,当然规范还是用int作为main函数的返回类型。

而且这个出题,读起来难以让人明白出题意思,哪里的陈旧题目了。「求直到最后一项小于10-5」为止,连个^号都没有,10-5=5啊,最后一项,如果就程序前半段来看,e=0是最后一项;如果就后半段来看的话,printf("e=%f\n"...)是最后一项;如果它这个最后一项指的是e取值的小数点部分,那它「10-5」就是精度指代。

我想这里要考察的知识点只不过是:

浮点数在计算机内存里面的存储,因为计算机都是0  1构成比特位进行计算的,计算机能够操作的只有0和1构成的二进制数,表示整数还好如255转化成二进制就是1111 1111。但浮点数,带小数部分的那种,就不是那么直接的了,科学家大致使用定点数和浮点数两种方式来表示数学上常规意义的实数,主流还是以浮点数为主(即小数点是浮动的),浮点数在计算机中有三个部分:符号位、指数、尾数。详细的见图片:

因此浮点数都有不确定尾数,如果判断两个浮点数是否相等,一定要用它们的差值和零比较,而不能直接进行比较,因为你让a=3.14b=3.14看起来赋值相等,但到计算机内存储就可能变成3.1400002301和3.1400007710了,由于尾数的不确定,它们必然不相等。

说实在,你这个题意还真让人不能理解,描述也是错漏百出!

fabs(a[i]-x)<1e-5,表示a[i]-x的绝对值小于10^-5。通常用于条件判断语句中,进行精度控制。

fabs是C语言中求绝对值的函数。

函数原型:double fabs(double x)

功 能:计算x的绝对值

返 回 值 :计算结果

1e-5是C语言中一种计数形式,1表示尾数,e表示阶码标志,-5表示阶码。

1e-5表示1*10^-5