第七周作业

Posted 于耀淞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第七周作业相关的知识,希望对你有一定的参考价值。

要求一:

完成PTA中题目集名为《usth-C语言基础-第七周作业》和《usth-C语言基础-12周PTA作业》中的所有题目。

(1)《usth-C语言基础-第七周作业》的截图

(2)《usth-C语言基础-12周PTA作业》的截图

备注:单选题虽然是零分,但是我已做完,只是不正确。

要求二:

7-3 求交错序列前N项和

1.实验代码

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

2 设计思路
(1)算法
第一步:把n,a,b,i设置为整形变量,且a=1,b=1,i=1。其中n为你输入的正整数,a为分子,b为分母,i为循环计数;
第二步:把得到的和sum设置为浮点形变量;
第三步:输入正整数n;
第四步:写循环语句:
当i<=n是进入循环,计算sum=sum+a/b*pow((-1),i+1),期间i每循环一次加一,依题得,分子每次都加一,分母每次都加二,因此a每循环一次加一,b每循环一次加二;
第五步:输出sum的值。
注意:(1)输出sum的值要保留三位小数;(2)本题是减加减加循环,所以我用的方法是pow((-1),i+1),就是(-1)的i+1次方。
(2)流程图

3.本题调试过程碰到问题及解决办法
错误:段错误

解决办法:经过查看,输入少写了&符号,改正即可。
4.本题PTA提交列表

7-5 统计学生平均成绩及及格人数

1.实验代码

#include <stdio.h>
int main()
{
	int a,b,c,sum,d;
	float average;
	c = 1;
	d = 0;
	sum = 0;
	scanf("%d",&a);
	if(a != 0)
	{
	while(c <= a)
	{
		scanf("%d",&b);
		if(b >= 60)
		{
			d = d +1;
		}
		else if(b < 60)
		{
			d = d + 0;
		}
		sum = sum + b;
		c = c + 1;
	}
	average = (sum + 0.05) / a;
    }
    else if(a == 0)
    {
    	average = 0;
    	d = 0;
	}
	printf("average = %.1f\\ncount = %d",average,d);
}

2 设计思路
(1)算法
第一步:把输入成绩的个数 a,学生成绩b,循环次数c,成绩总和sum,及格人数d设置为整形变量;
第二步:把学生成绩的平均数average设置为浮点形变量;
第三步:输入学生成绩的个数a;
第四步:判断语句:
判断a是否为零,若不为零,进入循环语句,若为零,则平均值,及格人数都为零;
第五步:循环语句(其中还有一个判断语句):
判断c是否小于等于a,若成立进入循环。输入学生成绩b,判断学生成绩是否大于等于60,若是,则及格人数d加一,若不是,则及格人数d加零,之后再计算成绩的总和,循环计数c再加上一;
第六步:如果a不等于零的循环结束,跳出循环求平均值average;
第七步:输出学生成绩平均值和学生成绩及格的人数。
注意:average = (sum + 0.05) / a,中加0.05是为了四舍五入,为什么加0.05而不是0.5呢,是因为加0.05是为了在小数点后一位精确,而不是在个位。
(2)流程图

3.本题调试过程碰到问题及解决办法
错误:部分正确。


解决办法:分析题目结果和错误提示发现,错误在没有四舍五入,而第二个错误也在四舍五入出了问题,应把小数点后一位根据第二位四舍五入,而不是对个位数四舍五入。
4.本题PTA提交列表

要求三:

(1)Git地址:https://git.coding.net/jsjyuyaosong/usth--work.c.git
(2)上传截图

要求四:

作业互评

吴晓明:http://www.cnblogs.com/gu-an-cheng-wxm/p/7850962.html
孙铭婧:http://www.cnblogs.com/sun031915/p/7845595.html#3843670
王姝雯:http://www.cnblogs.com/phsudie/p/7837488.html

要求五:

个人总结

(1)①本周你学习了哪些内容?②收获了什么?
①本周我学习了循环语句,while,do...while,for,还有类似多重循环的东西。②收获了这些循环知识点。
(2)①本周所学内容中你觉得哪些是难点?②有哪些知识点还不明白?
①我认为循环语句的框架不是难点,而分析题目是难点。②依题目做题我认为很困难,而其核心在于分析,所以我要多训练,多巩固与总结。

要求六:

学习进度表与折线图


以上是关于第七周作业的主要内容,如果未能解决你的问题,请参考以下文章

第七周作业 20165307

Python数据分析第七周作业随笔记录

2017-2018-2 1723《程序设计与数据结构》第七周作业 总结

第七周作业

第七周作业

第七周作业