发布网友 发布时间:2022-04-06 09:56
共2个回答
热心网友 时间:2022-04-06 11:25
用!表示阶乘,不重置的话,计算出来的是1!+1!2!+1!2!3!+1!2!3!4!+1!2!3!4!5!, 所以是34863。因为不重置,每次都在前一项的基础上乘了一个i!,但是我们只需要在前一项的基础上乘以i就行了,所以多乘了。重置的话,虽然是正确的,但是多此一举嘛,搞什么二重循环?觉得cpu太快了么?已经算好4!了,算5!的阶乘,只需要在4!上乘以5就行了,非得重置为1,然后再乘1 2 3 4 5,太浪费了……正常的写法应该是:int n=0, a=1;for (int i=1; i<=5; i++){ a*=i; n+=a;}热心网友 时间:2022-04-06 12:43
def cx(n):