代码改变世界

第七周作业

2017-11-18 11:49  孙佳钰  阅读(296)  评论(2编辑  收藏  举报

要求二
(三)题目7-3求交错前N项和
1.实验代码

#include<stdio.h>
int main()
{
  int i=1,a=1,b=1,n;
  double sum=0,y;
  scanf("%d",&n);
  while(i<=n){
    y=a*i*1.0/b;
    sum=sum+y;
    i=i+1;
    b=2*i-1;
    a=-a;
  }
  printf("%.3lf",sum);
  return 0;
}

2.设计思路
(1)主要题目算法
第一步:思考运算公式 为y=ai1.0/b
第二步:清楚要求为双精度
第三步:运用while句型
第四步:让a=-a循环 把公式插入循环语句:```
y=ai1.0/b;
sum=sum+y;
i=i+1;
b=2*i-1;
a=-a;

第五步:输出所求数值

(2)流程图
![](http://images2017.cnblogs.com/blog/1240122/201711/1240122-20171117133633984-1659460939.png)


3.本题调试过程中遇到的问题及解决方法。
错误截图

![](http://images2017.cnblogs.com/blog/1240122/201711/1240122-20171116195414281-1364793666.png)

遇到的问题:可以运行但是结果不正确,问了同学后说是精度问题更改了一下双精度为double   ```while(i<=n){部分,打成了while(i<=n);{```
    
    
4. PTA截图
![](http://images2017.cnblogs.com/blog/1240122/201711/1240122-20171114194855484-311363249.png)

(五)统计学生平均成绩及及格人数
1.实验代码

include<stdio.h>

int main()
{
int count,i=1,n,grade;
double sum;
count=0;
sum=0;
scanf("%d",&n);
if(n!=0){
while(i<=n){
scanf("%d",&grade);
if(grade>=60)
count++;
sum=sum+grade;
i++;
}
printf("average = %.1f\n",sum/n);}
else
printf("average = 0.0\n");
printf("count = %d",count);
return 0;
}

2.设计思路
(1)主要题目算法
第一步:定义整型变量n,count,i,grade
第二步:浮点型变量average=0,sum=sum+grade
第三步:在循环框中加入条件(grade>=60)的时候count=count+1
第四步:按要求输出变量
(2)流程图
![](http://images2017.cnblogs.com/blog/1240122/201711/1240122-20171117133004484-250458967.png)


3.本题调试过程中碰到的问题及解决办法
错误截图:
![](http://images2017.cnblogs.com/blog/1240122/201711/1240122-20171117092344109-936169710.png)

遇到的问题:运行不正确,发现编辑时再一次忘记在if后所叙述的内容外加{ }
4.pta提交列表
![](http://images2017.cnblogs.com/blog/1240122/201711/1240122-20171114195224156-464740578.png)

要求四
git地址:https://git.coding.net/Iams/homework.git
coding截图
![](http://images2017.cnblogs.com/blog/1240122/201711/1240122-20171114195359077-1790057758.png)


要求五
个人总结
(1)本周学习内容和收获:
  1.while 和 do-while 的比较
     1).while 循环:先判别条件,再决定是否循环
     2).do while循环:先至少循环一次,然后再根据条件决定是否继续循环
  2.for循环
           for (表达式1; 表达式2; 表达式3)     循环体语句

(2)本周所学内容中那些是难点:
do while的循环至少要执行一次;
while循环如果一次不满足条件就不执行;

要求六
我评价的作业:
孙   娜:http://www.cnblogs.com/sun-na-/p/7825690.html
孙美玲:http://www.cnblogs.com/sunmeiling/p/7827950.html
马宇欣:http://www.cnblogs.com/mayuxin/p/7834515.html

折线图
![](http://images2017.cnblogs.com/blog/1240122/201711/1240122-20171118114653124-97184821.png)

表格
![](http://images2017.cnblogs.com/blog/1240122/201711/1240122-20171118115022827-481119159.png)