| 这个作业属于那个课程 | C语言程序设计I |
| 这个作业要求在哪里 | https://www.cnblogs.com/hoppe/p/11900610.html |
| 我在这个课程的目标是 | 学会自己编程简单的小程序 |
| 这个作业在那个具体方面帮助我实现目标 |
熟悉break、continue的使用 熟悉使用循环的嵌套解决问题 |
| 参考文献 | C语言程序设计、百度百科 |
1.PTA实验作业

1.1 打印九九口诀表
题目内容:
下面是一个完整的下三角九九口诀表:
1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4*4=16 1*5=5 2*5=10 3*5=15 4*5=20 5*5=25 1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
本题要求对任意给定的一位正整数N,输出从1*1到N*N的部分口诀表。
输入格式:
输入在一行中给出一个正整数N(1≤N≤9)。
输出格式:
输出下三角N*N部分口诀表,其中等号右边数字占4位、左对齐。
1.1.1数据处理
数据表达:用了int整型结构,变量为A,N,B,运用了for循环结构,加上嵌套循环结构
数据处理:

1.1.2实验代码截图

1.1.3 造测试数据

1.1.4 PTA提交列表及说明

1.部分正确:sample等价答案错误,变量进入for循环时变量关系弄错,最大N错误,代码编写时没有确定变量大小。变量与同学不同,得出来的答案都是部分正确,修改后就正确了,还是没搞明白。
2.答案错误:修改变量错误,导致sample等价,只有一个,最大N错误。
3.编译错误:代码修改不规范,大括号的位置错误,前面少了一个空格
1.2 换硬币
题目内容:
将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?
输入格式:
输入在一行中给出待换的零钱数额x∈(8,100)。
输出格式:
要求按5分、2分和1分硬币的数量依次从大到小的顺序,输出各种换法。每行输出一种换法,格式为:“fen5:5分硬币数量, fen2:2分硬币数量, fen1:1分硬币数量, total:硬币总数量”。最后一行输出“count = 换法个数”。
输入样例:
13
输出样例:
fen5:2, fen2:1, fen1:1, total:4 fen5:1, fen2:3, fen1:2, total:6 fen5:1, fen2:2, fen1:4, total:7 fen5:1, fen2:1, fen1:6, total:8 count = 4
1.1.1数据处理
数据表达:运用了int整形结构,变量为x,a,b,c,count.代码整体用了for循环结构,中间嵌套循环结构。
数据处理:
1.2.2 实验代码截图

1.2.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
| 13 | fen5:2, fen2:1, fen1:1, total:4 fen5:1, fen2:3, fen1:2, total:6 fen5:1, fen2:2, fen1:4, total:7 fen5:1, fen2:1, fen1:6, total:8 count = 4 |
正确 |
| 9 | fen5:1, fen2:1, fen1:2, total:4 count = 1 |
正确 |
| 15 | fen5:2, fen2:2, fen1:1, total:5 fen5:2, fen2:1, fen1:3, total:6 fen5:1, fen2:4, fen1:2, total:7 fen5:1, fen2:3, fen1:4, total:8 fen5:1, fen2:2, fen1:6, total:9 fen5:1, fen2:1, fen1:8, total:10 count = 6 |
正确 |
1.2.4 PTA提交列表及说明

答案错误:运行种数只有一种,没有把全部的排列算出开=来。
答案错误:开始在编译器上编写代码,运行时得出来的答案算种数时前面少了count=导致答案错误
2.代码互评
同学代码截图:

我的代码截图:

1.第二个for循环时条件第三个表达式不同,同学的是j=j+1,我的是i++,但是意思表达相同。
2.同学的多了if条件当i==j时,直接输出,代码更加清楚。
同学的代码:

我的代码:

1.变量输入方式不同。
2.代码都差不多,但是同学的代码的行数少,使代码更加清晰简洁,看的更明白。
3.学习总结
3.1 学习进度条
| 时间 | 所花时间 | 代码行 | 学到的知识点简介 | 目前感到迷惑的地方 |
| 第一次 | 55 | 打出Hellow World | 输出比较困难 | |
| 第二次 | 120 | 学习提问的智慧 | 安装编译软件 | |
| 第三次 | 190 | 关系运算、if-else语句、格式化输入语句scanf(),以及常用的数学库函数 |
scanf函数不知道怎么用 |
|
| 第四次 | 220 | 使用for循环语句实现指定次数的循环程序设计 | 整型函数还不是很清楚 | |
| 第五次 | 350 | 生成乘方表与阶乘表 | 读代码还不清楚 | |
| 第六次 | 195 | 熟悉多分支结构、字符型数据类型和逻辑运算符。 | 数据类型不是很清楚 | |
| 第七次 | 240 | 熟悉多分支结构switch语句的使用 | switch多分支结构的条件怎么写 | |
| 第八次 | 260 | 使用while和do-while结构解决问题 | 做PTA时不知道从什么地方下手 | |
| 第九次 | 275 | break、continue的使用、熟悉使用循环的嵌套解决问题 | 怎么运用循环嵌套 |
3.2 累积代码行和博客字数

3.3 学习内容总结和感悟
3.3.1 学习内容总结

3.3.2 学习体会
1.这次作业主要让我们熟悉break、continue的使用熟悉使用循环的嵌套解决问题。机课也是调试嵌套案例,要我们注意嵌套函数的代码格式。
2.通过机课的学习,逐渐熟悉了调试代码,查看代码从哪里出现了错误,但是设置断点比较困难。
3.小细节一样不能忽视,比如空格。代码的规范度一定要到位,特别要注重格式清晰,简洁。