第七周作业

  要求二

题目7-3求交错前N项和

1.实验代码

#include<stdio.h>
int main()
{
  int i,N;
  int flag=1;
  double sum;
  scanf("%d",&N);
  for(i=1;i<=N;i++)
  {
    sum=sum+i*1.0/(2*i-1)*flag;
    flag=-flag;
  }
  printf("%0.3f",sum);
  return 0;
}

2.设计思路

(1)主要描述题目算法

①首先,认真审题。本题要求:计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。

在题目的末尾还有要求:结果保留三位小数。

②这道题肯定要用到循环语句,联想到我们所学的知识,用for语句简单。

第一项1,第二项是2/3,第三项是3/5,第四项是4/7。然后各项相加

   我运用公式:sum=sum+i*1.0/(2*i-1)

但是题目并不是这样 仔细发现

第一项1,第二项是-2/3,第三项是+3/5,第四项是-4/7。

每一项都要换符号,这样我在公式末尾加一个变量fiag;

这样加一个公式fiag=-flag,就可以每一项都变换符号。

③编译运行检查,是否有误。

(2)流程图

3.本题调试过程中遇到的问题及解决方法

错误截图

遇到的问题:输出的 答案总是错误

解决方法: 联想牛小霞老师上课说的因为 i是用整型定义的, 所以 i 需要变成i*1.0

4.本题pta提交列表

 

题目五-统计学生平均成绩及及格人数

1.实验代码

#include <stdio.h>
int main(){
  int i,n;
  double total=0,grade;
  int count=0;
  scanf("%d",&n);
  for(i=1;i<=n;i++)
  {
    scanf("%lf",&grade);
    if (grade>=60) count=count+1;
    total=total+grade;
  }
      if(n==0)
      printf("average = 0.0\n");
      else
      printf("average = %.1f\n",total/n);
      printf("count = %d",count);
      return 0;
}

2.设计思路

(1)主要描述题目算法

①仔细读题 题干主要讲述:  计算学生们的平均成绩,并统计及格(成绩不低于60分)的人数。题目保证输入与输出均在整型范围内。

还有要求:第一行中给出非负整数N,即学生人数。第二行给出N个非负整数,即这N位学生的成绩,其间以空格分隔。

②定义变量:整型    i----代表循环次数      n----代表人数       count-----代表及格人数

                     浮点型    grade-----代表每个人的 成绩     total----代表总成绩

③利用for语句执行循环for(i=1;i<=n;i++)  

在其中加入计算公式total=total+grade

然后要计算及格人数       if (grade>=60) count=count+1

④编译运行,检查是否有误。

(2)流程图

 

 

3.本题调试过程中碰到的问题及解决办法

错误截图

 

遇到问题: 一开始编译的时候显示最后一行有编译错误

解决办法:经过自己仔细观察,for循环语句中缺少}

4.pta提交列表

要求三(附加作业)

一.  题目7-1  1-100求和

1.实验代码

#include<stdio.h>
int main()
{
  int i=0;
  int sum=0;
  while(i<=99)
  {i=i+1,sum=sum+i;}
  printf("sum = %d",sum);
  return 0;
}

 

2.设计思路

(1)题目算法

第一步:认真读题,理解题意:计算表达式 1 + 2 + 3 + ... + 100 的值。

第二步:利用while循环语句,和公式计算i=i+1,sum=sum+i;完成此题计算要求。

第三步:编译运行,检查是否有误。

(2)流程图

(3).本题调试过程中碰到的问题 及解决办法

错误截图

遇到的问题:条件设为i<=100总是答案错误

解决方法:询问同学while循环语句要自身循环一次,所以条件应改为i<=99

 

(4).本题pta错误提交列表

 

要求四

git地址:https://coding.net/u/zhangle1234567/p/pta7/git/tree/master/

coding截图

要求五

个人总结

(1)本周学习内容和收获:

1.while 循环;

2.do while循环;

3.for循环;

4.break语句和continue语句

4.嵌套循环

(2)难点

变量与循环体的关系

要求六

互评和学习进度

1.      我评论同学的博客链接:

徐敬淇http://www.cnblogs.com/SR1011/p/7853220.html

林梦    http://www.cnblogs.com/lin2580/p/7841437.html

汪智恒http://www.cnblogs.com/wangzhiheng/p/7806065.html

2、请用表格和折线图呈现你本周(11/9 13:00~11/19 8:00)的代码行数和时间、博客字数和时间、涉及的知识点

posted @ 2017-11-18 17:19  张乐五班  阅读(258)  评论(2编辑  收藏  举报