作业头
这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-4/homework/11496 |
我在这个课程的目标是 | 学会自定义函数,制作思维导图,本次作业拿到满分 |
这个作业在那个具体方面帮助我实现目标 | 作业的严格要求和PTA的精选题集 |
参考文献 | 《C语言程序与设计》,百度 |
学号 | 20209078 |
1.PTA实验作业(20分/题)
1.1 C程序设计 习题 7.3 函数实现两个数的最大值 (2分)
用函数编程计算两个整数的最大值,在主函数中调用该函数计算并输出从键盘任意输入的两整数的最大值。
1.1.1 数据处理
①数据表达:使用了a,b,c,max变量,且都为整形。其中a,b通过scanf()函数输入得到,c由定义的函数运算得出,max由if-else结构判断并获得对应的赋值。
②数据处理:表达式【scanf("%d %d", &a, &b);】【c=f(a, b);】【if (x < y){max = y;}else{max = x;}】。
③函数参数:主调函数:主函数main() 被调函数:自定义函数f(int x, int y),f(int x, int y)的类型为整形,实参a,b,c为整形,形参int x, int y也为整形。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
1 3 | 3 | 测试正数与正数比大小 |
-1 -3 | -1 | 测试负数与负数比大小 |
1 -3 | 1 | 测试正数与负数比大小 |
1.1.4 PTA提交列表及说明
提交列表说明:
1.答案错误:码字码快了把printf("%d", c);打成printf("%d", a);了
2.答案正确:改正过后答案正确。
1.2 求组合数 (15分)
1.2.1 数据处理
①数据表达:使用了i,a,m,n变量,其中i,m,n为整形,a为双精度浮点型。
②数据处理:表达式【a=a*i;】【a=fact(n)/(fact(m)*fact(n-m));】。
③函数参数:主调函数:主函数main() 被调函数:自定义函数fact(int n) 形式参数int n是整数类型 实参是i m n 其中 m n 是自定义函数中主函数main()下的 也是整数类型。
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
2 7 | result = 21 | 题目中的输入和输出样例 |
3 3 | result = 1 | 相等数测试 |
100 107 | result = 26075972546 | 大数测试 |
1.2.4 PTA提交列表及说明
提交列表说明:
1.答案正确:第一次编译的时候正确了。
2.编译错误:想把自定义函数移到前面,然后忘记删掉分号了。离谱。
3.答案正确:改完之后就成功了。应该算是学会了吧。
2.代码互评(5分)
- 同学代码截图
同学1的作业
同学2的作业
-
自己代码截图
-
比较:
1.同学1的代码没有使用自定义函数,然后写得比较巧妙,将公式上的三个阶乘分别用for循环写出来了,再套用公式。
2.同学2使用了自定义函数,且运用的是do...while循环,一看就是往后自学了。定义函数的方式和我的有些许不同。
3.我自己的话,就是用了传统的方法。但是也稍微改进了一下,因为负数是没有阶乘的,所以我添加了一个if-else结构判断是否有负数,再分别进行输出。
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
10/12——10/18 | 40h | 581 | printf(),scanf()的用法,if-else的用法 | 无 |
10/19——10/23 | 33h | 617 | for循环 | 无 |
10/24——10/25 | 13h | 262 | do...while循环 | 运用方式 |
10/26——11/1 | 15h | 458 | 自定义函数 | 无 |
11/2——11/8 | 19h | 144 | pow(),sqrt()函数 | 无 |
11/9——11/15 | 14h | 597 | 函数 | 如何改错,会调试了还是很慢,不熟练 |
3.2 累积代码行和博客字数(5分)
时间 | 博客字数 | 代码行数 |
---|---|---|
第一周 | 1951 | 879 |
第二周 | 1994 | 458 |
第三周 | 6917 | 144 |
第四周 | 1924 | 597 |
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2 学习体会
学习内容总结:
- 本周,我们学习了一部分自定义函数,然后我自学了制作思维导图和另一部分自定义函数。还有就是美化博客园看了一点点css代码什么的。
感悟:
- 也许是我没学明白或者遇到的题目和一些问题比较简单,我觉得自定义函数的意义就是让代码看起来更顺眼,不用把一些复杂点的运算表达式堆在一起导致看起来很复杂很乱。增加代码的可读性。
- 课堂上能掌握的知识是有限的,所以我们要学会自学。
- 真的要重视时间管理了,一天天浑浑噩噩就过了。毕竟肯定会有一些特殊的事情打乱时间规划,虽然我想尝试阻止它,但没什么效果。而且嘛,谁也不能把自己的观念强加于生活上对吧。适应适应,把主动权拿回来就行了。欸欸,又是消极的发言了,算了,生活多美好,加油,奥利给!