这个作业属于那个课程 | https://edu.cnblogs.com/campus/zswxy/CST2020-1/ |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11610 |
我在这个课程的目标是 | 学习break和continue语句以及其区别 |
这个作业在个具体那方面帮助我实现目标 | 从题目中练习加以熟悉两种语句 |
参考文献 | c语言程序设计(第三版) |
学号 | 20208917 |
1.PTA实验作业(20分/题)
请再此处列出自己的排名图片:
1.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位、左对齐。
输入样例:
4
输出样例:
11=1
12=2 22=4
13=3 23=6 33=9
14=4 24=8 34=12 44=16
1.1.1数据处理
数据表达:定义了三个整型,分别是i,j,N。
数据处理:输入N进入for(i=1; i<=N; i++) 循环结构中{for(j=1; j<=i; j++) {输出printf("%d*%d=%-4d",j,i,i*j);}输出printf("\n");}
1.1.2实验代码截图
1.1.3 造测试数据
输出你的程序面向各种测试数据结果,除了题目给出的测试数据,可以自己再造其他临界数据,越多越好,并加上必要说明
输入样例 | 输出样例 | 说明 |
---|---|---|
4 | 得到4 的乘法表 | 输入4得到4的乘法表 |
9 | 得到9的乘法表 | 输入9得到9的乘法表 |
1.1.4 PTA提交列表及说明
根据PTA提交列表,简要描述调试程序碰到的问题及解决办法。
PTA提交列表:
提交列表说明:
1.格式错误:%d+%d=%d加\t也是占4位数然后出现格式错误,把=后的%d改成%-4d。
2.格式错误:输出的i与j的位置调换了,使行换成列了。
1.2 题目名2:一钱生多钱
题目内容描述:在日常生活中,我们常常需要将一些大额的人民币换算成零钱,已知我们有许多面值5元,2元和1元的人民币。
编程实现:输入我们需要兑换的金钱数,然后我们用这些面值5元,2元和1元的人民币来兑换,要求每一种面值都至少有1张,然后输出有多少种兑换方式。
输入格式:
输入在一行中给出待换的零钱数额(大于等于8小于等于100)
输出格式:
每行输出一种兑换方式,按照如下格式输出(并且每一种面值的人民币都是从小到大输出):
five=五元数量,two=两元数量,one=一元数量
输入样例:
在这里给出一组输入。例如:
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.2.1 数据处理
数据表达:定义4个整型,分别是money,five,two,one。
数据处理:输入money进入for(five=1;five<=money;five++)for(two=1;two<=money;two++)for(one=1;one<=money;one++)进入if(five*5+two*2+one*1==money)输出printf("five=%d,two=%d,one=%d",five,two,one);输出printf("\n");
1.2.2 实验代码截图
1.2.3 造测试数据
输入样例 | 输出样例 | 说明 |
---|---|---|
13 | five=1,two=1,one=6five=1,two=2,one=4five=1,two=3,one=2five=2,two=1,one=1 | 输入13输出five=1,two=1,one=6five=1,two=2,one=4five=1,two=3,one=2five=2,two=1,one=1 |
1.2.4 PTA提交列表及说明
提交列表说明:
1.编译错误:忘记定义five,two,one,加上这三个整型。
2.答案错误:if的条件确定错误,选择出来的答案不为five的数量和two的数量和one的数量。
2.代码互评(5分)
找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。
同学代码截图1:
同学代码截图2:
自己代码截图:
1.运用到了数组,新概念有些的琢磨不透。
2.switch和数组的穿插使用。
3.思路的不同,感觉思维局限。
3.学习总结(15分)
3.1 学习进度条(5分)
3.2 累积代码行和博客字数(5分)
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2 学习体会
本周老师讲了break和continue的使用,同时也留了break的课后问题,给我们解决。
学习感受,感觉这次作业很难,要使用数组解决问题,比较陌生。
课后问题:break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;如果没有break语句,则将成为一个死循环而无法退出。