昨天估计是没有睡好。。好困啊。
侃终于浮上来说了两句话。。。
明天去蛋子那里。。又要一件板筋。汗。。。
然后去一中探险。^_^。。。
#include<Stdio.h> void main(void) &leftsign; int i,j; double a,sum; for(i=1,sum=0;i<10;i++) for(a=i,j=0;j<i;j++) &leftsign; sum+=a; a*=10; &rightsign; printf(“1+22+333+…+999999999 = %.0f\n”,sum); &rightsign;
运行结果: 1+22+333+…+999999999 = 1097393685 Press any key to continue
^_^ ,外层循环比较简单, for(i=1,sum=0;i<10;i++) 也就是说 共有9项(i从1到9)
内层循环复杂一点: for(a=i,j=0;j<i;j++) //a=i 是因为第 i 项的每一位数字都是 i //内层循环的次数 j 从0到 i-1 ,i 次, //原因是 每一项都是类似于 4 + 40 + 400 + 4000 //所以, j=0,1,2,3分别对应 4 * (10 的 j 次方) //而sum 将这些项加起来,因此,每次内层循环 //sum 的值就是 原来数列中 一项的值 //通过外层循环将各项的值加起来,sum最终的 //的结果就是 数列的 多项求和 &leftsign; sum+=a; a*=10; &rightsign;
不过,还是比较喜欢简化成下面的样子 void main(void) &leftsign; int i,j; double a,sum; for(i=1,sum=0;i<10;i++) for(a=i,j=0;j<i;j++,a*=10) sum+=a; printf(“1+22+333+…+999999999 = %.0f\n”,sum); &rightsign;
今天好困。。真不想看了。。。哪天有时间再看吧。。。唉。。堕落了啊~~~
关联记录
暂无可公开显示的关联评论。评论与回复仍保存在本私有归档的
comments/目录;阅读界面默认隐藏邮箱、IP 和用户代理信息。