C语言博客作业03函数

1.本章学习总结

1.1 思维导图

1.2 本章学习体会及代码量学习体会

1.2.1 学习体会

这周最大的收获就是学习函数,并且通过对函数的封装来做成一个简单的小程序,这周做的最有意义的事情就是做了老师布置的大作业,通过大作业的编写,并且研究别人优质的代码和网络上的一些学习资料,来看到自己的不足和需要学习的地方,我的大作业用函数封装的较少,基本都是在主函数直接使用,是整个程序虽有功能,但是查看时候却显得很麻烦,希望以后的作业中能有进步。

1.2.2 代码累计

2.PTA总分

2.1截图PTA中函数题目集的排名得分

2.2 我的总分:30

3.PTA实验作业

3.1 PTA题目1

判断满足条件的三位数,统计给定区间内的三位数中有两位数字相同的完全平方数(如144、676)的个数。

3.1.1 算法分析

3.1.2 代码截图

3.1.3 测试数据

3.1.4 PTA提交列表及说明

  • Q1:在dvec++上面调试并且运行时候,没毛病,结果pta显示编译错误
  • A1:后来才发现是函数体,只是需要补充函数。。。不需要全部录入。。
  • Q2:答案部分正确
  • A2:最后c的求法求错了,导致后来答案部分正确,并没有全部正确。

4.大作业

题目:实现小学四则运算。

4.1.函数关系图

4.2.函数功能介绍(由于一开始觉得程序不是特别大,就直接全都放在主函数里面,其余定义函数很少....)

1.函数1

通过用库函数#include <time.h>
#include <stdlib.h>
用rand()%n(n来规定范围)
得到随机数进行运算

2.函数2

通过上诉的函数,用类似的方法,随机得到1和0;并使对应的1和0对应+和-,得到+-的随机符号。

3.函数3

同样的方式,求出0~3的随机数,对应+-*/来的到第一级的随机符号

4.3 运行结果截图





4.4 调试碰到问题及解决办法

  • A1第一级除法的时候,对于得数的解决方法一直找不到解决。
  • Q1:干脆把所以输入的值全都改成double 并且在程序的最开始的选择界面就直接表面答案用一位小数表达,宿舍中其他人有一种做法是使用x... ...n余数的求法,小学生并未学到小数,用余数的求法更加好用切亲近小学生。
  • A2:一开始并不知道如何去求随机符号
  • Q2:在网上学习了产生随机数的方法,通过类比,将随机数对应随机符号,可以输出随机的符号。

4.5 大作业总结

残留问题:

  • 1:如何计时,还没有搞懂。
  • 2.:当等级或者题目输入非法字符的时候,系统会自己退出,如何做到通过提示,并回到初始界面。
  • 3:所编写的系统杂乱,没有善于用函数进行封装。

对同学优质代码的看法:同学的函数封装很好,代码分明,并且对刷题系统的功能进行了很多方面的扩展,晓淞的代码格外分明,天明的代码界面有趣适用于使用群体。其他展示或者没有展示的同学的好的代码,都具有函数封装分明的特点,并且使用缓冲区清零,考虑优先级,限时函数,甚至用了数组当时还未学习的内容。

反思:对于代码不能放在主函数一把抓,也不能太多函数封装,一把抓使得代码凌乱,分块太多,导致调试的时候,不好调试。百度是个好东西,不懂的函数使用可以从网络上找到答案,博客园的同学的资料很有值得借鉴的地方,程序有找不完的bug,只有在不断调试和优化,才能越走越远,越做越好,实验才是检验真理的唯一标准!

原文地址:https://www.cnblogs.com/wxj991220/p/9955414.html