满意答案
S1e0z1y4e3l
2013.08.30
采纳率:51% 等级:12
已帮助:22882人
是这样的啊,语句就像这样:
for(i=1;i<=n;i++)
s=s*i;
注意啊,这里的前提是s=1,这个一定不能少啊。就这样循环下去,最后s就是n的阶乘。
是这样一步一步赋值的。
第一步:i被赋1,s=s*i,这时s=1*1.因为这时s=1,i=1.这次循环结束后s的值为1.即是1的阶乘。
第二步:这时i被赋2,因为结束循环后i要自加一次,其值就变为2。再执行s=s*i,这时s=1*2.因为这时s=1,i=2.这次循环结束后s的值为2.即是2的阶乘。
第三步:这时i被赋3,因为结束循环后i要自加一次,其值就变为3。再执行s=s*i,这时s=2*3.因为这时s=2,i=3.这次循环结束后s的值为6.即是3的阶乘。
…………
最后一步:这时i被赋n,因为结束循环后i要自加一次,其值就从上次结束循环时的n-1变为n。再执行s=s*i,这时s=(n-1)!*n.因为这时s=(n-1)!,i=n.这次循环结束后s的值就为n的阶乘。
这个循环就是这样一步一步通过改变i的值,进而改变s的值来实现对n求阶乘,即求1乘2乘3乘4乘5 ……
这样你应该明白了吧,已经很详细了。如还不懂就再问我,和我联系。
20分享举报