-问题- | -答案- |
---|---|
这个作业属于那个课程 | c语言程序设计I |
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/10028 |
我在这个课程的目标是 | 熟练掌握c语言编程 |
这个作业在哪个方面帮我具体实现目标 | 熟悉break、continue的使用,熟悉使用循环的嵌套解决问题 |
参考文献 | 《c语言程序设计》 |
1.PTA实验作业
1.1打印九九口诀表
下面是一个完整的下三角九九口诀表:
11=1
12=2 22=4
13=3 23=6 33=9
14=4 24=8 34=12 44=16
15=5 25=10 35=15 45=20 55=25
16=6 26=12 36=18 46=24 56=30 66=36
17=7 27=14 37=21 47=28 57=35 67=42 77=49
18=8 28=16 38=24 48=32 58=40 68=48 78=56 88=64
19=9 29=18 39=27 49=36 59=45 69=54 79=63 89=72 99=81
本题要求对任意给定的一位正整数N,输出从11到N*N的部分口诀表。
输入格式:
输入在一行中给出一个正整数N(1≤N≤9)。
输出格式:
输出下三角N*N部分口诀表,其中等号右边数字占4位、左对齐。
1.1.1数据处理
数据表达:用了int n;用来输入,int i,j;在运算中使用。
1.1.2实验代码截图
1.1.3 造测试数据
-输入数据- | -输出数据- | -说明- |
---|---|---|
3 | 11=1 12=2 22=4 13=3 23=6 33=9 | 输入3时 |
4 | 11=1 12=2 22=4 13=3 23=6 33=9 14=4 24=8 34=12 44=16 | 输入4时 |
2 | 11=1 12=2 2*2=4 | 输入2时 |
1.1.4 PTA提交列表及说明
q1:开始的时候掉了换行在devc++上算出来怎么都不一样,后来发现了应该在循环后切到下一行
q2:开始不知道等号右边数字占4位、左对齐什么意思且用空格来写也不行,后来改成了%-4d才行
1.2换硬币
将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?
输入格式:
输入在一行中给出待换的零钱数额x∈(8,100)。
输出格式:
要求按5分、2分和1分硬币的数量依次从大到小的顺序,输出各种换法。每行输出一种换法,格式为:“fen5:5分硬币数量, fen2:2分硬币数量, fen1:1分硬币数量, total:硬币总数量”。最后一行输出“count = 换法个数”。
1.2.1 数据处理
数据表达:int x表示钱数,fan5,fan2,fan1是五分二分一分钱的数目,int total是钱数int count是方法数;
数据处理:
1.2.2 实验代码截图
1.2.3 造测试数据
-输入数据- | -输出数据- | -说明- |
---|---|---|
10 | fen5:1, fen2:2, fen1:1, total:4fen5:1, fen2:1, fen1:3, total:5count = 2 | 金额为10时 |
8 | fen5:1, fen2:1, fen1:1, total:3 count = 1 | 金额为8时 |
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 | 金额为13时 |
1.2.4 PTA提交列表及说明
q1:在第一个printf中忘记加空格了,每个%d后都加个空格除了最后一个;
q2:定义fen2时打错了一直显示编译错误,吧fen2打成了feb2,改过来然后编译就没错误了;
2.代码互评
同学代码
自己代码
1:我和他都是从最多五分及最多二分开始的,但他用了三个for且用第三个for来推一分的数目;
2:他用for和if来算当钱数和金额相等时来推断一分钱数目的情况,我是直接用的一分钱数目=总金额减五分钱和二分钱得出,他写的很好充分的用了镶嵌;
3.学习总结
3.1 学习进度条
-周/日期- | -这周所花的时间- | -代码行- | -学到的知识点简介- | -目前比较迷惑的问题- |
---|---|---|---|---|
第一周 | 两小时 | 40 | 了解科学与技术专业和c语言 | 无 |
第二周 | 三小时 | 50 | 正确的提问 | 无 |
第三周 | 八小时 | 164 | 学习用if-else语句,分段函数 | 各种情况下变量的不同 |
第四周 | 八小时 | 150 | for的循环语句 | 无 |
第五周 | 八小时 | 150 | 初步认识函数的定义和调用 | 无 |
第六周 | 八小时 | 210 | 熟练多分支结构、字符型数据类型和逻辑运算符 | 无 |
第七周 | 八小时 | 190 | 熟悉多分支结构switch语句的使用 | 无 |
第八周 | 八小时 | 195 | 熟悉使用while和do-while结构解决问题 | 无 |
第九周 | 八小时 | 186 | 熟悉使用break、continue和循环的嵌套解决问题 | 输出时符号不同的各种意思 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1学习内容总结
3.3.2 学习体会
这周学习了break、continue和使用循环的嵌套解决问题,实现了代码由面到立体的转变,嵌套可以让代码变立体,解决问题的范围更加广泛了,确实c语言学得越多越感觉其乐趣和功能强大,我觉得我很好的掌握了本周的学习内容,但是打代码的速度还是不够快,思考方向不够全面,我认为还需要多多练习才行,希望学习能越来越好,加油。