首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

求程序解读解决方案

2013-07-30 
求程序解读main(){float n,s0,t1for(n1n20n++) { t*n s+t }printf(1+2!+3!...+20!%e\n,s)

求程序解读
main()
{
float n,s=0,t=1;
for(n=1;n<=20;n++)
 {
 t*=n;
 s+=t;
 }
printf("1+2!+3!...+20!=%e\n",s);
}
其中for语句中t*=n; s+=t;是怎么实现循环的,及其代表的含义

[解决办法]
t*=n; -> t=t*n;//表示n!
s+=t; ->s=s+t;  //表示1+2!+...+n!之和

你在循环中打印一下每次循环后t,s的值
就能看出来他是怎么在循环的了
[解决办法]
t*=n;  //n=1时,t=t*n=1*1=1
s+=t;  //n=1时,s=s+t=0+1=1

t*=n;  //n=2时,t=t*n=1*2=2
s+=t;  //n=1时,s=s+t=1+2=3
.......
如此重复下去,直到n=20

热点排行