正确答案是32.660259
正确答案是32.660261
你可以说你用的是float,精度没那么高;但你不能在明知道精度没那么高的情况下还输出8位有效数。
正确答案是32.660261
你可以说你用的是float,精度没那么高;但你不能在明知道精度没那么高的情况下还输出8位有效数。
#include <stdio.h> int main( void ) { double result = 0.0; for( size_t i=0,a=1,b=2; i!=20; ++i,b+=a,a=b-a ) result += b*1.0/a; printf( "%lf\n", result ); return 0; }