要求二
题目7-3 求交错序列前N项和
一,实验代码
#includeint main(){ int i,N,flag=1; double sum; scanf("%d",&N); sum=0; for(i=1;i<=N;i++){ sum=sum+flag*i*1.0/(2*i-1); flag=-flag; } printf("%.3f",sum); return 0; }
二,设计思路
1.根据题意,变量分别是整型变量i,N,flag(初始化),浮点型变量sum(前N项和)。
2.需要用到循环结构,循环体的计算公式为:sum=sum+flag*i*1.0/(2*i-1) , flag=-flag 。
3.输入数据,并进行判断,若i<=N,执行 sum=sum+flag*i*1.0/(2*i-1) , flag=-flag 循环。
4.计算后输出结果。
三,流程图
四,遇到的问题及解决方法
这道题上课的时候老师讲了类似的,看课件就可以了。
五,PTA提交列表
提交的时候错了没注意看,过了提交时间才发现的。
题目7-5统计学生平均成绩及及格人数
一,实验代码
#includeint main(){ int n,i,a,count=0; float sum=0,average; scanf("%d",&n); if(n<0) return 0; else if(n==0){ printf("average = %.1f\n",0.0); printf("count = %d\n",0); return 0;} for(i=0;i =0) sum += a; if(a>=60) count++;} average = sum/n; printf("count = %d\n",count); printf("average = %.1f\n",average); return 0; }
二,设计思路
1.定义变量,分别是整型变量n(学生人数),i,a(学生成绩),count(及格人数);浮点型变量sum(成绩总和),average(平均成绩)。
2.题中需用到判断和循环两种结构,if-else结构和for,循环体 scanf("%d",&a);sum+=a;if(a>=60) ,count++,其他计算公式:average=sum/n。
3.输入n和相应的学生成绩,判断:若n不等于0,且i<=n,则执行sum+=a,再进行判断,若a>=60,则执行count++,然后进行循环,循环结束后计算平均成绩;若n=0,则输出平均值等于0,及格人数为0。
4.输出计算结果。
三,流程图
四,遇到的问题及解决方法
觉得自己做的是对的但提交上去是部分错误,后来上课老师讲了之后加上了 n = 0 的情况应该就对了。
五,提交列表
要求三
上传文件截图
GIT地址
要求四
个人总结:
本周主要学习了循环结构,for,while,do-while,while是先判断再执行;do-while是先执行在判断,至少循环一次,for可以代替while,我自己认为最难得是怎么让循环结束,这部分知识掌握不是很清楚。
要求五
学习进度与互评
我评价的博客
胡俊鲜:http://www.cnblogs.com/123456hjx/p/7823616.html
林梦:http://www.cnblogs.com/lin2580/p/7841437.html
刘铭霞:http://www.cnblogs.com/19991001lmx/p/7840628.html
学习进度表格
日期 | 博客字数 | 时间一 | 代码行数 | 时间二 | 知识点 |
2017.11.17 | 约350 | 40分钟 | 140 | 五小时左右 | 三种循环 |
折线图