C语言I博客作业08

1.作业头

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/SE2020-2
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11627
这个作业的目标 对PTA的作业进行一个归纳总结,了解自己的代码和同学的代码差异,并进行比较学习,对这一周的学习进行一个总结。
学号 20209123

一、本周教学内容&目标

第4章 循环结构 4.3熟悉break、continue的使用 4.4 熟悉使用循环的嵌套解决问题。

二、本周作业

1.PTA实验作业

2.代码互评

3.学习总结

三、作业格式

1.PTA实验作业(20分/题)

请再此处列出自己的排名图片:

从PTA题目集中选出2个你最满意的题目完成以下内容,选择题目难度越大,分值越高,每题20分(每项5分),内容要求如下:

1.1 题目名1:一钱生多钱

题目内容描述:在日常生活中,我们常常需要将一些大额的人民币换算成零钱,已知我们有许多面值5元,2元和1元的人民币。
编程实现:输入我们需要兑换的金钱数,然后我们用这些面值5元,2元和1元的人民币来兑换,要求每一种面值都至少有1张,然后输出有多少种兑换方式。

1.1.1数据处理

介绍实现本题过程中,你的数据表达、数据处理是怎么做的。注意:请务必按照以下方式书写。
数据表达:用了five,two,one,money变量,这些变量的值是:five=五元数量,two=两元数量,one=一元数量,类型是:int型。
数据处理:数据用到的表达式:5*five+2*two+1*one==money,流程结构:嵌套循环,for循环,if语句选择。

1.1.2实验代码截图

贴图展示代码,不要复制。请给出名字标识。

1.1.3 造测试数据

输出你的程序面向各种测试数据结果,除了题目给出的测试数据,可以自己再造其他临界数据,越多越好,并加上必要说明
输入数据 输出数据 说明
1 无数据 待换的零钱数额应大于等于8小于等于100
8 five=1,two=1,one=1 仅有一种兑换的方法
10 five=1,two=1,one=3
five=1,two=2,one=1
有两种兑换的方法
11 five=1,two=1,one=5
five=1,two=2,one=3
five=1,two=3,one=1
有三种兑换的方法
13 five=1,two=1,one=6
five=1,two=2,one=4
five=1,two=3,one=2
five=2,two=1,one=1
有四种兑换的方法

1.1.4 PTA提交列表及说明

根据PTA提交列表,简要描述调试程序碰到的问题及解决办法。

提交列表说明:

1.编译错误:第一次编译错误是不知道怎么去写,尝试着的去写了一下,问题有很多,根据编译输出器我进行了一些改编。
2.编译错误:在if后面打了一个分号,编译无法输出,编译错误。
3.编译错误:这次的编译错误我不知道错在哪里了,我就直接把代码个删了,重新打了一次代码。
4.编译错误:在佛瑞循环里面,有一个分号我改成了一个逗号。

注意必须写明每个错误点,你是怎么解决的。此项没写好,本题0分。

1.2 题目名2:打印九九口诀表

题目内容描述:下面是一个完整的下三角九九口诀表:

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,输出从11到NN的部分口诀表。

1.2.1数据处理

介绍实现本题过程中,你的数据表达、数据处理是怎么做的。注意:请务必按照以下方式书写。
数据表达:用了N,i,j,变量,这些变量的值是:N是输入在一行中给出一个正整数,i和j是因数,类型是:整型。
数据处理:数据用到的表达式:j=1;j<=N;j++,j=1;j<=N;j++流程结构:嵌套循环,for循环。

1.2.2实验代码截图

贴图展示代码,不要复制。请给出名字标识。

1.2.3 造测试数据

输出你的程序面向各种测试数据结果,除了题目给出的测试数据,可以自己再造其他临界数据,越多越好,并加上必要说明
输入数据 输出数据 说明
1 1*1=1 1行1列
3 1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
3行3列
5 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
5行5列
7 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
7行7列
9 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
9行9列

1.2.4 PTA提交列表及说明

根据PTA提交列表,简要描述调试程序碰到的问题及解决办法。

提交列表说明:

1.答案错误:一次是凭感觉自己写的,我也不知道答案错误错在哪了,然后,我把代码删除重新打的一次代码。
2.答案错误:输出后结果为0*1开始的,将他放dev c++进行调试,将i,改成了i=0.
3.答案错误:发现编译运行后还是同样的错误,重新调试了一下,将j,改成了j=1。
4.编译错误:将在dev c++中打出的正确代码复制粘贴到PTA提交,return 0;后面的}没有写上。

注意必须写明每个错误点,你是怎么解决的。此项没写好,本题0分。

2.代码互评(5分)

找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。

同学代码截图

自己代码截图


1.我的代码明显比同学的代码要简单些,同学的代码比我的代码复杂些。
2.我的代码没有调用数学函数,但是同学代码调用了数学函数。
3.同学代码运用了for循环,while循环,if-else选择;而我的代码只用了for循环,if-else选择。
4.我的代码是总写,而同学代码是分开了,而且有取余,我的代码没有取余。

同学代码截图

自己代码截图


1.同学的代码明显的比我的代码要复杂些,同学的代码有去调用其他的东西,但是,我没有去调用其他的东西。
2.同学的代码运用了数组,但是我的代码没有去运用数组。
3.同学代码用的for循环,我的代码用的while循环。
4.同学代码多次用到了选择结构if。

3.学习总结(15分)

3.1 学习进度条(5分)

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
10/18-10/24 16小时 110行 打印holle world和其变形
10/25-10/31 10小时 320行 选择结构,求华摄温度 一些表达式的运用
11/1-11/7 15小时 450行 循环结构 流程结构的顺序
11/8-11/14 17小时 465行 函数的定义和调用,生成乘方表与阶乘表 怎么定义函数,完整代码的格式与顺序问题
11/15-11/21 18小时 472行 if-else型结构,多分支结构,字符型数据类型和逻辑运算符 字符型数据类型和运算符的优先级
11/22-11/18 19小时 473行 switch语句,多分支结构的使用 switch语句case后面需要写的内容
11/29-12/5 18小时 478行 熟悉使用while和do-while结构解决问题 while语句里面的循环体还有一点不太会写
12/6-12/12 10小时 329行 巩固前面学习的知识点 do-while循环还是有一些不会
12/13-12/20 16小时 408行 学习break、continue的使用,学习使用循环的嵌套解决问题 对于嵌套解决问题还是有些不会

3.2 累积代码行和博客字数(5分)

3.3 学习内容总结和感悟(5分)

3.3.1 学习内容总结


3.3.2 学习体会

请回顾自己的本周的学习过程,描述学习感受,也可以提出你不理解的地方、对教师教学建议等。如果你有新的想法或者新的方法,请及时记录下来。

1.这是两周来写的一次作业,我学习到了更多的新内容与知识,感到十分的开心。例如:我学习break、continue的使用,学习使用循环的嵌套解决问题,同时,我也对C语言有了更加深刻的了解,在C语言这门课中,我感觉到了我对软件工程这门专业更加深刻的了解。
2.在学习的过程中,我依旧会产生很多的问题,而且有些的问题我还是不太会。尤其是这次PTA,他让我写了很久。感觉对代码的编写还是真的是比较生疏的,可见,我还是有很多的问题的。
3.细节决定成败,在打代码的时候一定要注意细节,不然会因为一个小细节问题,而导致代码编译错误。要深刻记得中英符号的区别,还有分号一定不要漏写。
4.对于写代码,我们还是要多加的练习,正所谓熟能生巧。去多多的写一些题目。
5.还是那句话,不懂的题目一定要去找资料,去问同学,去把不懂的题目给搞懂。不然,不会的题目堆积,就更加的不会。

原文地址:https://www.cnblogs.com/jn2765187762/p/14146659.html