C语言,float f[4]={4,5,6,7}

img


求解答,为什么选B呀,知道应该选小数点后六位,但是这个数怎么来的呀

if (i%2) 这里, 只有i%2不为0的时候才执行后面的语句s = s + f[i], 因为i<3, 所以只有当i=1的时候才执行s = s + f[i]

当i为0时,if(i%2)为0,不执行if后面的语句;当i为1时,if(i%2)为1,执行if后面的语句,s=0+5=5,又因为i增加到2就退出for循环,所以最后输出s=5.000000