本周作业头
这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11530 |
我在这个课程的目标是 | 熟悉break和continue的使用 |
这个作业在那个具体方面帮助我实现目标 | 参考同学的代码,翻阅书籍 |
参考文献 | c语言程序设计(第三版) |
学号 | 20208928 |
1.PTA实验作业(20分/题)
1.1 题目1 显示指定范围内的素数
题目描述:输入整数m,将所有大于1小于整数m的素数存入所指定的数组中(数组最多只存放100个素数,超过则提示“OVERFLOW”),输出各素数——若输入的m≤2,则提示“NO”,程序终止。注:素数(Prime Number),亦称质数,指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。
1.1.1数据处理
数据表达:整型定义 count,i,m,n,a
数据处理:用了math函数,使用了判断素数n=sqrt(a),用了if判断,以及for的嵌套结构
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
10 | 2 3 5 7 | 10以内的素数有2,3,5,7 |
4 | 2 | 4以内的素数有2 |
1.1.4 PTA提交列表及说明
部分正确:是因为if(m>541){ printf("OVERFLOW");return 0;}中少了return 0;导致后面输出了568之内的所以素数。
编译错误:没有打break,跳出循环。
1.2 题目2 钱生多钱
题目内容:在日常生活中,我们常常需要将一些大额的人民币换算成零钱,已知我们有许多面值5元,2元和1元的人民币。
编程实现:输入我们需要兑换的金钱数,然后我们用这些面值5元,2元和1元的人民币来兑换,要求每一种面值都至少有1张,然后输出有多少种兑换方式。
1.2.1数据处理
数据表达:定义one,two,five,x整型变量
数据处理:运用for循环嵌套和if分支嵌套。
1.2.2实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
99 | five=2,two=3,one=83 | 代入正确 |
8 | five=1,two=1,one=1 | 代入正确 |
1.2.4 PTA提交列表及说明
编译错误:把三个整型变量的初始值都赋值为0了,应该为1。
多种错误:没有运用for循环嵌套结构。
2.代码互评
同学代码1
同学代码2
我的代码
同学1:用了数组,较复杂麻烦,解题的思路很清晰,对做题人的要求较高
同学2:跟自己的代码类似,但是自己用了sqrt函数解题
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 这周所花的时间 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|
第十五周12.8-12.14 | 45 | 学习break和continue的使用 | 不太清楚两者区别 |
第十四周12.1-12.7 | 40 | 学习while循环结构 | 对while和for循环的区别使用还不够熟练 |
第十三周11.23-11.30 | 26 | 学习switch-case结构 | 不太理解if-else和switch-case的区别 |
第十二周 11.11-11.22 | 25 | 调用函数,了解char字符型变量,熟悉if-else分支结构 | if-else的多种分支嵌套不太懂 |
第十一周 11.10-11.14 | 20 | 定义和调用函数 | 不太懂清楚定义函数和调用函数的顺序和什么时候该定义函数 |
第十周 11.2-11.8 | 19 | for循环结构 | 不是太熟悉for结构中什么语句应该包含循环 |
第九周 10.26-11.1 | 18 | if-else语句 | 不太理解if-else和else-if多分支结构的区别 |
第八周 10.19-10.25 | 16 | 对C语言的基本认知 | 没有 |
3.2 累积代码行和博客字数(5分)
时间 | 博客字数 | 代码行数 |
---|---|---|
第八周 | 1007 | 15 |
第九周 | 537 | 50 |
第十周 | 1250 | 102 |
第十一周 | 1450 | 160 |
第十二周 | 1521 | 155 |
第十三周 | 1425 | 203 |
第十四周 | 1611 | 256 |
第十五周 | 1704 | 305 |
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2 学习体会
每个人的学习进度条都在进步,自己同时也在努力,我认为现在参考别人的代码可以对自己有进一步的提升和认识,了解他们的思维思路,对自己也有一定帮助,相互借鉴,相互进步。
还有就是还是要多练习代码,提高知识熟练度以及巩固。
课后习题:如果跳出循环
(1)用break跳出一重循环
(2)使用双break
(3)用return作为函数返回值跳出函数,即跳出for函数体中for循环
(4)使用goto
(5)设置标志flag
(6)for词句,改循环的计数