这个作业属于那个课程 |
C语言程序设计II |
这个作业要求在哪里 |
作业要求 |
我在这个课程的目标是 |
熟练运用函数代码运算 |
这个作业在那个具体方面帮助我实现目标 |
函数的理解和其意义 |
参考文献 |
C语言程序与设计(第三版) |
学号 |
20209007 |
1.PTA实验作业
1.1统计各位数字之和是5的数
1.1.1数据处理
数据表达:运用了x,j,n,sum,m,k几个变量,且都为整型。
数据处理:运用while循环语句,用for循环进行总结运算。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 |
输出数据 |
说明 |
104 999 |
104 is counted. count = 15, sum = 3720 |
代入题目数据,结果正确 |
188 656 |
count = 10, sum = 3110 |
代入不同值,输出结果无误 |
1.1.4PTA提交列表及说明
编译错误:漏打了{return 1;},导致死循环,输出错误
答案正确:加上之后测试结果正确。
1.2 解一元二次方程
1.2.1数据处理
数据表达:用了a,b,c,d,e,x1,x2,z几个变量,其中a,b,c由scanf输入,a,b,c为scanf输入的值,其余的都是这三个数的衍推。
数据处理:表达式:d = b*b-4*a*c;x1= (-b+sqrt(d))/(2*a);x2= (-b-sqrt(d))/(2*a);e = (-b)/(2*a);z = sqrt(-d)/(2*a);
流程结构:先考虑if(a==0)if(b==0) if(c==0)
printf("无穷多解");
else
printf("无解");
else
printf("x = %.lg",fabs(-c/b));三种情况,在考虑 Δ的三种情况最后:
大于0,printf("x1 = %g, x2 = %g",fabs(x1),x2);
等于0,printf("x1 = x2 = %g",fabs(x1));
小于0,printf("x1 = 0+%gi, x2 = 0-%gi", z, z);
其中还要考虑(-b)/(2*a)的符号:
小于0,z=-z;printf("x1 = %g-%gi, x2 = %g+%gi",e,z,e,z);
大于0,printf("x1 = %g-%gi, x2 = %g+%gi",e,z,e,z);
1.2.2实验代码截图
1.2.3 造测试数据
输入数据 |
输出数据 |
说明 |
-0.2 0.04 -0.01 |
x1 = 0.1-0.2i, x2 = 0.1+0.2i |
代入题目数据,两个共轭的虚根运算正确 |
3 0 0.27 |
x1 = 0+0.3i, x2 = 0-0.3i |
两个共轭的虚根,实部为零,结果运算结果正确 |
1.2.4PTA提交列表
部分正确:一直卡在最后两个共轭的虚根,实部为零这种情况上卡了很久,没考虑根的符号
答案正确:通过询问同学得到解惑,把情况考虑到位,最后正确。
2.代码互评
同学代码:
我的代码:
不同点:
1.同学前面大部分思路和我相同,但最后两个共轭的虚根,实部为零情况的考虑,他运用了绝对值,而我用的是分情况讨论。
2.考虑a,b,c的符号,我直接一步到位,同学分步讨论了。
同学代码:
我的代码:
不同点:
1..is函数该同学比我少定义一个变量
2.该同学使用n变量作为count的值没有做到见明知义
3.1 学习进度条
周\日期 |
这周所花时间 |
学到知识点简介 |
目前比较迷惑的问题 |
十二周 |
8h |
C语言的分支结构 |
不知如何准确运用分支结构 |
十三周 |
6h |
switch语句以及多分支语句 |
如何简略准确的写出满意的代码 |
十四周 |
9h |
do-while语句以及循环结构 |
如何把各种情况概括起来,避免重复 |
十五周 |
12h |
for的多循环结构 |
for循环的结构老是混淆 |
十六周 |
14h |
函数的运用 |
函数的意义还没吃透,还需钻研 |
3.2累积代码行和博客字数
3.3.1学习内容总结
3.3.2 学习体会
- 1.这周我们学习了使用自定义函数和函数的作用域;
- 2.对于表达式的使用还是不太熟练,在打代码的时候容易思绪混乱,集中不了,还要继续练习,提升自己;
- 3.对于没学的知识点,自学程度不够,导致有些题没有写题思路;