C语言I博客作业09
一、本周教学内容&目标
第4章 循环结构 4.3熟悉break、continue的使用 4.4 熟悉使用循环的嵌套解决问题。
二、本周作业头
这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/10028 |
我在这个课程的目标是 | 掌握C语言,灵活运用C语言编程 |
这个作业在那个具体方面帮助我实现目标 | 学会使用continue的用法以及嵌套式循环的掌握 |
参考文献 | 百度以及C语言程序设计教材 |
1.PTA实验作业
1.1 7-2 换硬币
题目内容描述:
将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?
输入格式:
输入在一行中给出待换的零钱数额x∈(8,100)。
输出格式:
要求按5分、2分和1分硬币的数量依次从大到小的顺序,输出各种换法。每行输出一种换法,格式为:“fen5:5分硬币数量, fen2:2分硬币数量, fen1:1分硬币数量, total:硬币总数量”。最后一行输出“count = 换法个数”。
1.1.1数据处理
数据表达:定义了整形变量x为钱的大小,count为几种算法,fen5为5分钱的数量,fen2为2分钱的数量,fen1为一分钱的数量,total为硬币的数目
数据处理:
int变量
for(fen5的最大数目;循环条件;fen5--){
for(fen5条件下fen2最大数目;循环条件;fen2--){
fen1的数量;
硬币数量;
count++;
}
}
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
13 | 题目示例 | |
9 | fen5:1, fen2:1, fen1:2, total:4 count = 1 | 只有一种情况时 |
10 | 有两种情况时 |
1.1.4 PTA提交列表及说明
说明:
1.答案错误:第二个for语句中,fen2的数量没有掌握好,后来改写为了fen2=((x-1-5*fen5)/2)
2.答案错误:答案书写格式没有掌握好,后来在count后面加上了\n
3.答案错误:count忘记赋值,后赋值为0
1.2 7-6 跟奥巴马一起画方块
题目内容说明:
美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧!
输入格式:
输入在一行中给出正方形边长N(3≤N≤21)和组成正方形边的某种字符C,间隔一个空格。
输出格式:
输出由给定字符C画出的正方形。但是注意到行间距比列间距大,所以为了让结果看上去更像正方形,我们输出的行数实际上是列数的50%(四舍五入取整)
1.2.1 数据处理
数据表达:定义整形变量N为一行中字符c的数量,m为N的二分之一,i,j,定义字符型变量c
数据处理:
int 变量
char c
if(N为偶数时)
for(i=1;i<=m;i++)
for(j=1;j<=N;j++)
输出
else
则m=N/2+1
重复为偶数时的for循环
输出
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
10 | 题目示例 | |
5 | N为奇数时 | |
4 | N为偶数时 |
1.2.4 PTA提交列表及说明
说明:
1.答案错误:没有考虑N有奇数偶数两种情况,后面考虑上m=N/2+1的情况
2.代码互评
1.题目:换硬币
同学代码截图:来自计科二班颜婷同学
自己代码截图:
不同处:
1.她用了三个for,我用了两个for
2.她的三个for中每一个从最大开始,慢慢减小,知道if中的式子成立便可以输出,而我的是用两个最大的开始套,然后用x减去fen5和fen2所占去的钱便是余下fen1的数量
2.题目:跟奥巴马一起画方块
同学代码截图:来自计科一班彭齐家同学
自己代码截图:
不同处:
1.他是直接将奇数和偶数放在一个式子中,加上0.5就可以了,我是用了if-else分为了两种情况
3.学习总结
3.1 学习进度条
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
这周学习了嵌套式循环结构还有continue和break语句的扩展认知,再写pta的时候,感觉自己对于for语句嵌套式循环跟着continue语句一起使用的是时候,弄不清顺序,不知道执行时,应该回到哪一个for,不执行时又应该如何走,后来在同学的帮助下,并且在网上查阅资料,书上翻阅,还是多少明白了一点,所以当自己疑惑的时候,一定要多去学习,多去查阅资料,问问同学,当然还要掌握提问的技巧,然后这次pta的编程题目感觉挺难得吧,逻辑思维能力很重要,不仅要会使用相关语句,还要知道哪些式子从何而来,对我来说是一个挺大的难题,所以多培养自己的逻辑思维能力,当然多做题就是一个很好的办法,相信自己可以变得更好!