以下程序拟实现计算sum=1+1/2+1/3+…+1/50。 程序运行后,不能得到正确结果,出现问题的语句是( )。

14 查阅

以下程序拟实现计算sum=1+1/2+1/3+…+1/50。

程序运行后,不能得到正确结果,出现问题的语句是( )。

A.sum+=1/i;

B.while(i<50);

C.sum.=1.0;

D.i++;

参考答案:

A选项A中,8111111+=1/i;i为整型,因此l/i是整型类型,当1/i有小数时,小数部分会被截断。因此l/i结果始终为0,导致结果出错,应改为8111m+=1.0/i。因此答案为A选项。

计算机二级