TA贡献13条经验 获得超11个赞
问题1:每一次循环,h都应该被重置为1,你的h值没有重置。i=1执行完后h变为(1!),不重置为1的话,i=2时h=( 1! )*(2!)......你再想想是不是这个理。
问题2:你的内层循环是求 1到20的阶乘 的,你还没求出来如(5!)怎能加到sum里面,因此把sum+=h;放在内层循环外。
望采纳~楼主加油学吧
TA贡献2条经验 获得超2个赞
for (i = 1; i <= 3; i++) { h = 1;//h要归1 for (j = 1; j <= i; j++) { h = j*h; } sum = sum + h; }
举报