第七周作业
7-3 求交错序列前N项和
1.实验代码
#include<stdio.h> int main() { int i,n; double sum1=0,sum2=0; scanf("%d",&n); for(i=1;i<=n;i=i+1) { if(i%2==1) { sum1=sum1+1.0*i/(2.0*(i-1)+1); } if(i%2==0) { sum2=sum2+(-i)/(2.0*i-1); } } printf("%.3f",sum1+sum2); return 0; }
2.设计思路
主要描述题目算法
第一步:定义i,n,sum1,sum2分别为循环变量,输入的正整数,奇数项和,偶数项和。
第二步:设置循环语句,运用if语句求和。
第三步:循环结束后输出算式的和。
流程图
3.本题调试过程碰到问题及解决方法
注:由于题目列表不同,图中显示7-2,实为同一道题。
由于if中等于打成了赋值,导致答案错误,改正后正确。
7-5 统计学生平均成绩及及格人数
1.实验代码
#include<stdio.h> int main() { int sum=0,i,n,num,count=0; float average; scanf("%d",&n); if(n>0) { for(i=0;i<n;i=i+1) { scanf("%d",&num); sum=sum+num; average=sum/(n*1.0f); if(num>=60) { count=count+1; } } printf("average = %.1f\n",average); printf("count = %d",count); } if(n==0) { printf("average = 0.0\n"); printf("count = 0"); } }
2.设计思路
主要描述题目算法
第一步:定义sum,i,n,num,count,average分别为成绩总和,循环变量,人数,单人成绩,及格人数,成绩均值。
第二步:输入人数,设置循环语句,用if语句求出及格人数和成绩均值。
第三步:循环结束后输出成绩均值和及格人数。
流程图
3.本题调试过程中碰到的问题及解决方法
开始完全没有考虑到有n=0的情况,格式方面也没有注意,导致答案出错,改成后正确。
我的git地址:https://coding.net/u/q807443119/p/zuoye/git
,
本周继续学习了循环语句,能力又得到了提高,但在做一些较复杂的题上面仍有很大的不足,无法很好地嵌套语句。
点评同学
班庆泽 http://www.cnblogs.com/wsbqz/p/7857944.html
郭钊毅 http://www.cnblogs.com/nothingistrue/p/7858481.html
丰大为 http://www.cnblogs.com/DavidPark/p/7846082.html
表格及流程图