第七周作业

7-3 求交错序列前N项和
1.实验代码

#include <stdio.h>
#include <math.h>
int main()
{
	int a,b,c,d,e,f;
	float m,sum;
	sum = 0;
	scanf("%d",&a);
	for(b = 1,c = 1,d = 2,e = -1,f = 1;b <= a;b = b + 1,c = c + 2,d = d + 1,f = pow(e,d))
	{
		m = (b * 1.0f) / c;
		sum = sum + (m * f);
	}
	printf("%.3f",sum);
}

2.设计思路
(1)
第一步:定义分子与分子分母变量a,b,c用于-1的变量f,e,d。
第二步:由题可知在循环中使分子和变量b,d每次增加1分母c每次增加2并且使-1每次进行递增次幂计算。
第三步:分子分母部分相除计算并乘以变量-1得到每项m的值。
第四步:当b大于a时跳出循环。
第五步:使每次m的值相加得到sum的值。
(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.05f) / a;
    }
    else if(a == 0)
    {
    	average = 0;
    	d = 0;
	}
	printf("average = %.1f\ncount = %d",average,d);
}

2.设计思路
(1)
第一步:定义总人数a变量c每人成绩b及格数d总数sum和平均值average。
第二步:建立循环每次c增加1直到c大于人数a跳出。
第三步:在循环内输入成绩b并判断是否及格,及格d加1,不及格d数量加0。
第四步:每输入一人成绩sum增加该成绩。
第五步:跳出循环后sum值除以人数a得到平均值。
第六步:分别输出平均成绩和及格人数。
(2)

3.问题
一开始对变量输入感觉无从下手经过多次尝试后得到解决方法,对循环中计数书写混乱,经过一步步调试后找到了最佳方案。
4.PTA提交列表

要求四
1.git地址
https://git.coding.net/z732511533/ZYS.git
2.截图

要求五
1.学习内容
学习了while,for语句循环,在循环中嵌套等。
2.难点,知识点
多个循环嵌套时理解比较混乱,素数的判断较难,在语句中的空格输出格式难掌控。

要求六
1.点评
于耀淞:http://www.cnblogs.com/jsjyys/p/7826828.html
张国庆:http://www.cnblogs.com/zgq947/p/7856360.html
丰大为:http://www.cnblogs.com/DavidPark/p/7846082.html
2.表格,流程图

时间 代码行数 时间1(min) 博客字数 时间2(min) 知识点
11.10 150 90 0 0 while语句
11.11 60 40 0 0 while语句
11.12 400 230 0 0 while语句
11.13 60 40 0 0 do while语句
11.14 50 30 0 0 for语句,while语句
11.15 40 30 0 0 for语句,while语句
11.16 50 40 0 0 while语句
11.17 30 20 0 0 while语句
11.18 100 120 491 140 while语句

posted @ 2017-11-19 00:41  左右羽  阅读(237)  评论(3编辑  收藏  举报