1.本章学习总结
1.1思维导图
1.2 本章学习体会及代码量学习体会
1.2.1学习体会
- 我眼中的函数 这一章接触到了新的知识——函数,不同于之前所学的编程,函数具有很清楚的分工性,且可以用来多次调用,解决代码重复问 题,增加代码可读性
- 我的函数学习 毕竟是新知识,刚开始学习时还是有点迷迷糊糊,虽然可以设计一些简单的函数,但阅读复杂代码时不太能看明白结构,但在老师的讲解和课堂互动过后,逐渐熟悉函数,觉得挺有意思的,非常有条理性。在做过一些题之后,关于函数的编程我的总结是,先将整个程序分成几大板块,分为主函数和自定义的函数,思考主函数怎样合理调用函数、自定义的函数应用哪一个类型、是否需要返回结果,一定要熟悉格式,有合理清晰的思路之后再开始编程。
- 需要注意的地方 在实参和形参重名的时候,不太能分得清到底结果应该怎么计算;函数相关的练习不太够,应该再找一些题目更加熟悉函数的思路和格式;在对于全局变量和局部变量甚至是静态变量的择优选择时,不太熟练掌握;对于方便但是不熟悉的函数来讲,总是会选择复杂但是熟悉的编程,应该熟练运用函数,提高函数质量。
1.1.2代码累计
2.PTA总分
2.1排名得分
2.2我的总分
3.PTA实验作业
3.1PTA题目1
验证哥德巴赫猜想
- 判断p是否为素数
- 将给定范围内的偶数拆成两个奇素数p,q
- PS:要求p为最小的情况
3.1.1 算法分析
函数一 判断p是否为素数
考虑特殊情况:1不是素数,2是素数
- if(p==1) return 0;
- else if(p==2) return 1;
素数判断:- p对于 2 to p/2+1 进行除法运算,
- for i= 2 to p/2+1
- if(p%i==0) return 0; //不是素数
- end for
- return 1;//是素数
函数二 将范围内的偶数拆分:
- 要求p为最小且为奇素数
- for p=3 to p=n
- if(p为素数) q=n-p;
- then if(q为素数) 输出p+q=n;
- end
3.1.2 代码截图
3.1.3 测试数据
3.1.4 PTA提交列表及说明
4.大作业
4.1函数关系图
4.2函数功能介绍
1.函数一 主函数
- 显示菜单,提示用户选择题集
- 调用三种题集对应的函数
2.函数二&&函数三&&函数四
- 提示用户输入需要的题量
- 产生随机数和随机字符,组成一道四则运算题
- 将用户输入的结果与数字对比,判断结果
- 在两题之间设计快捷键提前退出试题
- 计算用户的正确率
三个函数大体一致,区别于随机数的范围以及函数三、四两步运算的随机字符
3.函数五&&答案六 答案正确||答案错误
从课堂派的一道题中得到思路,为了丰富试题,随机输出四种意为“答案正确”或是“答案错误”的语句,为了方便且避免代码重复,采用函数的形式,供函数二、三、四 调用
4.函数七 结尾函数
- 对用户的答题情况进行统计宣布,包括:答题量、答对题数、答错题数、正确率
4.3运行结果截图
4.4 调试碰到问题及解决办法
- Q:忽略输入非法字符的情况
- S:林丽老师讲解,以及同学的提示,switch语句末尾加上default情况,要求重新输入提供的三个题集;
- Q:不知道怎么随机产生两位数
- S:百度搜索,请教同学;
- Q: 清零函数的使用不熟练
- S:查资料清楚使用格式,仔细斟酌之后确定清零函数的位置;
- Q: 进行除法时,产生无法整除的现象
- S:结果统一保留两位小数,并提示用户