![]() ![]() |
|
C趣味程序(二)(01)整数求和 | |
作者:佚名 文章来源:不详 点击数 更新时间:2008/4/18 13:58:55 文章录入:杜斌 责任编辑:杜斌 | |
|
|
常见的数据求和分为对一组有规律数据的求和与对若干个无规律的离散数据求和两种。 有规律的一组数据通常可以写出它的第i项的通项式f(i),在设置的求和i循环中,使用赋值语句s=s+f(i),把f(i)累加到s中,即可简便实现求和。 1.1.1 整数求和 求:s=1.2.3+3.4.5+...+99.100.101 易知通项f(i)=i*(i+1)*(i+2),i=1,3,...,99。于是可简单地由以下程序实现求和: #include<stdio.h> void main() { int i,s; s=0; for(i=1;i<=99;i+=2) s=s+i*(i+1)*(i+2); printf("1*2*3+3*4*5+...+99*100*101=%d",s); } 程序运行结果: 1*2*3+3*4*5+...+99*100*101=13002450 注:对于这一求和问题,可把通项式改为f(i)=(i-1)*i(i+1), i=2,4,...,100。 于是,求和程序可以改写为: #include<stdio.h> void main() { int i,s; s=0; for(i=2;i<=100;i+=2) s=s+(i-1)*i*(i+1); printf("1*2*3+3*4*5+...+99*100*101=%d",s); } 运行结果与上完全相同。 可见,求解一个问题,程序设计是灵活的,是可以变通的。程序设计的变通比较是提高程序设计能力的一个有效办法。 |
|
![]() ![]() |