这个作业属于哪个课程 | 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是一个素数,堪称当时世界上“已知最大素数”的一个记录。
本题要求编写程序,对任一正整数n(n<20),输出所有不超过2^n−1的梅森数。
输入格式:
输入在一行中给出正整数n(n<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.做题目太少,做题目不可以马上想出思路,这导致我做题速度很慢,要花许多时间在想思路上