一、PTA实验作业
【7-6、统计素数并求和】
1、PTA提交列表
2.、设计思路
由于1不是素数,所以输入1时要从2开始运算。count为素数个数,sum为素数和,初始都定义为0。外层用i作为循环共(M-N)次,内层用k作为循环共(i-2)次。外层循环提供一个数,内层循环判断所给数字是否为素数,若不是素数则进行下一个数的判断,若是素数则对count加一并将这个素数加入sum中。最后输出count和sum。
3、本题代码
4、本题调试过程碰到问题及PTA提交列表情况说明
错误点:1、判断素数条件不明导致循环无法结束
2、未考虑M=1时的情况
【7-16 小于m的最大的10个素数】
1、PTA提交列表
2、设计思路
输入m的值后将num定义为0,运用循环嵌套,外层循环提供实数,内层循环判断该数是否为素数,若不是判断下一个数,若是输出并给num加一,当num为10时结束程序。
3、本题代码
4、本题调试过程碰到问题及PTA提交列表情况说明
错误点:1、循环条件不明导致循环无法跳出
2、输出格式错误,应为%6d
【7-22 求组合数】
1、PTA提交列表
2、设计思路
定义fact函数,通过从1开始的循环相乘计算给定常数的阶乘值并返回;主函数输入m和n的值后调用fact函数经行x值的计算,最后输出x。
3、本题代码
4、本题调试过程碰到问题及PTA提交列表情况说明
错误点:1、未考虑用函数导致程序冗长,出错多而且无法运行
2、fact函数用于计算阶乘,为避免数字过大应用double定义,与主函数中x一致
3、输出格式没有注意空格,而且要用%.0f输出x的值
二、同学代码结对互评
互评同学:廖祥祥
互评题目:7-16
代码比较:
左侧为廖祥祥同学的代码,右侧为我的代码。我们对于跳出循环的方式不同,我的比较直接易懂,祥祥的比较简洁明了。相比起来我更喜欢廖祥祥同学的代码风格。
三、PTA最后排名
四、学习总结
1、学会了用while,for进行循环
掌握了循环的嵌套
学习如何用switch进行选择
2、不足:对switch的用法不熟练
对goto的用法不熟练
对循环嵌套仍有一定疑问,如内外层循环的循环条件,break的使用,何时跳出循环等
3、不会的题目:7-8,7-9,7-18,7-24,7-34