C语言I博客作业05

这个作业属于哪个课程 C语言程序设计II
这个作业要求在哪里 作业要求的链接
我在这个课程的目标是 熟练使用C语言进行编译
这个作业在那个具体方面帮助我实现目标 这次作业让我对于循环嵌套的理解更加深刻,对于嵌套的使用更加熟练
参考文献 文献
学号 20209188

1.PTA实验作业

1.1 换硬币 (20分)

将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?

输入格式:

输入在一行中给出待换的零钱数额x∈(8,100)。

输出格式:

要求按5分、2分和1分硬币的数量依次从大到小的顺序,输出各种换法。每行输出一种换法,格式为:“fen5:5分硬币数量, fen2:2分硬币数量, fen1:1分硬币数量, total:硬币总数量”。最后一行输出“count = 换法个数”。

1.1.1数据处理

  数据表达:整数型:a,b,i,j,k。a 用于承载输入的总金额,b 用于记录换法数,i,j,k分别用于记录5分,2分,1分的硬币数
  数据处理:
  数据表达式:赋值表达式,关系表达式,逻辑表达式。
  流程结构:循环结构,判断结构。
  函数参数:主调函数:mian   

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
9 fen5:1, fen2:1, fen1:2, total:4
count = 1
当输入4时,所有可能
99 fen5:19, fen2:1, fen1:2, total:22
fen5:18, fen2:4, fen1:1, total:23
fen5:18, fen2:3, fen1:3, total:24
fen5:18, fen2:2, fen1:5, total:25
......
count = 451
当输入99时,所有可能
1 count = 0 当输入1时,所有可能

1.1.4 PTA提交列表及说明

部分正确:一开始没看清题目要求,题目要求‘要求按5分、2分和1分硬币的数量依次从大到小的顺序,输出各种换法’,我一开始没注意他的输出顺序有要求,所以一直在考虑其他的方面,看是否是运算量的问题。

1.2 7-13 梅森数 (20分)

形如2^n−1的素数称为梅森数(Mersenne Number)。例如22−1=3、23−1=7都是梅森数。1722年,双目失明的瑞士数学大师欧拉证明了2^31−1=2147483647是一个素数,堪称当时世界上“已知最大素数”的一个记录。

本题要求编写程序,对任一正整数nn<20),输出所有不超过2^n−1的梅森数。

输入格式:

输入在一行中给出正整数nn<20)。

输出格式:

按从小到大的顺序输出所有不超过2^n−1的梅森数,每行一个。如果完全没有,则输出“None”。

输入样例:

6

输出样例:

3
7
31

1.2.1 数据处理

  数据表达:整数型:n,num,N。n用于承载输入的指数,num 计算所有可能结果,N用于记录符合题目要求的个数
  数据处理:
  数据表达式:赋值表达式,关系表达式,逻辑表达式。
  流程结构:循环结构,判断结构。
  函数参数:主调函数:mian

1.2.2 实验代码截图

1.2.3 造测试数据

输入数据 输出数据 说明
1 None 输入为1时,符合的数据
3 3
7
输入为3时,符合的数据
8 3
7
31
127
输入为8时,符合的数据

1.2.4 PTA提交列表及说明

  • 部分正确:最大值输出是错误的,后来经过检查发现是我输出的问题,一是把输出放在for循环外面,二的没有在完全没有时输出“None”。
    
  • 2.代码互评

  • 同学代码截图

    自己代码截图

1.他的代码直接在输入时进行判断,相对于我的用一个数组存下来,在、再进行比较要好很多
2.没有经过繁琐的程序,直接把第一个输入的值当成最小值,然后再于后面输入的值进行比较,比我的要更容易懂
3.相比较我的程序,计算量要小,存储空间要小

3.学习总结

3.1 学习进度条

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第8周/10.19~10.25 12 h 280 预习了一下课本,了解代码的样子,并学习了基本代码
第9周/10.26~11.1 15 h 580 了解了基本的常量与变量,与数据类型
第10周/11.2~11.8 20 h 930 if语句与for循环语句的运用
第11周/11.9~11.15 23 h 1420 函数的定义
第12周/11.16~11.22 24 h 1360 if 语句的嵌套

3.2 累积代码行和博客字数

3.3 学习内容总结和感悟

3.3.1 学习内容总结

3.3.2 学习体会

  1.本周的学习都在为11.21的考试做准备,一直在看<string.h>的数据库,记一些常用的有关字符串的函数
  2.感觉自己基础知识不牢靠,有一些实用的小技巧不知道,这导致我的代码相较于其他人的代码会复杂许多
  3.做题目太少,做题目不可以马上想出思路,这导致我做题速度很慢,要花许多时间在想思路上
posted @ 2020-11-21 16:40  懒癌·晚期患者  阅读(336)  评论(6编辑  收藏  举报