| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/CST2020-2 |
|---|---|
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-2/homework/11635 |
| 这个作业的目标 | <第5章 函数 要求学生掌握各种类型函数的定义、调用和申明,熟悉变量的作用域、生存周期和存储类型> |
| 学号 | <20208981> |
1.PTA实验作业

1.1 统计各位数字之和是5的数

1.1.1数据处理
数据表达:定义了整型变量a,b,sum,count,i;a是每一位数,b是每位数的和,count是满足条件的整数个数, sum是这些整数的和,i为循环变量
数据处理:使用了for循环语句,if分支语句
表达式:
a=number%10;
number=number/10;
b=b+a;
count++;
sum=sum+i;
1.1.2实验代码截图

1.1.3 造测试数据
| 输入 | 输出 | 说明 |
|---|---|---|
| 104 999 | 104 is counted. count = 15, sum = 3720 | 在[104,999]的范围中,两端中的104是各位数字之和是5的数,且有15个各位数字之和是5的数,这些整数的和为999 |
| 1 10000 | count = 56, sum = 77770 | 在[1,10000]的范围中,有56个各位数字之和是5的数,这些整数的和为77770 |
| 14 23 | count = 2, sum = 37 | 在[14,23]的范围中,两端都是各位数字之和是5的数,且仅有这两个各位数字之和是5的数,这些整数的和为37 |
1.1.4 PTA提交列表及说明

提交列表说明:
两次错误为一处,函数is,最后没有加上return 0;使得不满足条件的数也返回了1.
1.2 解一元二次方程

1.2.1 数据处理
数据表达:定义了整型变量a,b,c,d,x,x1,x2;a是二次项的系数,b是一次项的系数,c是常数项,d为b2-4ac;x为唯一解,x1,x2,为两个不同的根,定义了字符型变量op,用于求共轭虚根
数据处理:使用了if-else分支语句
表达式:
d=(b*b)-4*a*c;
x1=(-1*b+sqrt(d))/2*a;
x2=(-1*b-sqrt(d))/2*a;
d=-1*d;
x=sqrt(d)/(2*a);
x1=-1*b/(2*a);
1.2.2 实验代码截图


1.2.3 造测试数据
| 输入 | 输出 | 说明 |
|---|---|---|
| 0 4.5 -3.6 | x = 0.8 | 4.5a-3.6=0的解为x = 0.8 |
| -2 0.8 -0.06 | x1 = 0.1, x2 = 0.3 | -2x2+0.8x-0.06=0的解为x1 = 0.1, x2 = 0.3 |
| -0.2 0.04 -0.01 | x1 = 0.1-0.2i, x2 = 0.1+0.2i | -0.2x2+0.04x-0.01=0的解为x1 = 0.1-0.2i, x2 = 0.1+0.2i |
1.2.4 PTA提交列表及说明

提交列表说明:
1.部分正确:d的值在a != 0,且有两个相同解时,d的值并不等于零,以为是运算符的结合性导致运算出错,将d=(b*b)-4*a*c;改为d=(b*b)-(4*a*c);,结果同样是部分错误
2.部分正确:经过多次确认,确定是数据的精度存在误差导致,于是在a!=0,且有两个不同解是添加了if语句将x1,x2两个的值在相差小于0.0001时按有有两个相同解处理
2.代码互评
同学代码1:

自己代码:

1.is函数该同学比我少定义一个变量
2.该同学使用n变量作为count的值没有做到见明知义
同学代码2:


自己代码:


1.该同学比我多定义两个变量
2.该同学将变量运算集中布置于代码前面,使代码思路更清晰,更容易寻找错误
3.学习总结
3.1 学习进度条
| 周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
|---|---|---|---|---|
| 第一周 | 7h | 45 | 显示hallo world,数据类型,求摄氏温度 | 对一些字符的含义不理解 |
| 第二周 | 12 h | 98 | 学会一些基本的运算符,和printf的格式 | 对数据类型的选择不太清楚 |
| 第三周 | 21 h | 146 | 学会了if-else语句,scanf的格式,库函数的调用,for语句 | 不太理解预算符的运算法则 |
| 第四周 | 26 h | 178 | 定义与调用自定义函数 | 不清楚有些符号的作用 |
| 第五周 | 29h | 236 | 多分支结构、字符型数据类型和逻辑运算符 | 对省略else的结构不太理解 |
| 第六周 | 33h | 288 | 多分支结构switch语句 | break的使用以及switch语句中default的作用不太理解 |
| 第七周 | 36 h | 356 | while和do-while结构 | 容易弄错while循环结束时条件是真还是假 |
| 第八周 | 36 h | 365 | break、continue的使用,循环的嵌套 | 容易弄错循环判断条件,形成死循环 |
| 第九周 | 37h | 367 | 掌握各种类型函数的定义、调用和申明,熟悉变量的作用域、生存周期和存储类型 | 形参与实参的辨认 |
3.2 累积代码行和博客字数

3.3 学习内容总结和感悟
3.3.1 学习内容总结

3.3.2 学习体会
1.这周老师上课讲得基本都是理论知识,没有讲例题,所以对函数部分的知识的使用有些不明白
2.pta的作业越来越来难了,不明白为什么总会有超纲的内容出现
3.学期快要结束了,考试也十分临近了,在考试前的这段时要好好计划下复习
