不能声明m为整形,在计算的时候数据都是整形!只能这样:#include#include#includeusing namespace std;int main(){ float sum=0.0,s=1.0; float m=1.0; while(fabs(s)>=1e-6) { s*=1/m; m++; sum+=s; } cout< return 0;}
s* = 1.0/m 要不就是整数运算了结果是0
s*=1/m改为s*=1.0/m