for(i=1;i<=n;i++)与for(i=n;i>0;i--)有什么区别吗,为什么把后者换成前者就通过了

img

img

img

一个从小往大循环,一个从大往小循环;
循环次数虽然一样,你的a循环完毕后的值一样,可是过程是完全不一样的
s当然也就不一样了
你随便带入一组数心算一下不就知道了。
比如n取3,如果是1,2,3这样循环,那么a取值是1,2,6,加一起是9
如果是3,2,1这样循环,那么a取值是3,6,6,加一起是15

我咋感觉你没改对,代码真够乱的