一、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