贺宏辉

 

C语言I博客作业08

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/CST2020-1
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11610
这个作业的目标 学会使用break、continue,学会使用循环的嵌套解决问题
学号 20208954

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

1.1 7-2 打印九九口诀表 (15分)
题目内容描述:本题要求对任意给定的一位正整数N,输出从11到NN的部分口诀表。输入在一行中给出一个正整数N(1≤N≤9)。输出下三角N*N部分口诀表,其中等号右边数字占4位、左对齐。

1.1.1数据处理

数据表达:定义了整形的N,x,y变量
数据处理:用了两个for循环形成嵌套,分别对x和y赋值,然后进行算数表达

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
4 输入4,则输出4*4的乘法表
6 输入6,则输出6*6的乘法表
9 输入9,则输出9*9的乘法表

1.1.4 PTA提交列表及说明

格式错误:等号右边数字没有占4位,直接输出 %d*%d=%d,仔细读了下题才改回来。

1.2 7-4 一钱生多钱 (10分)
在日常生活中,我们常常需要将一些大额的人民币换算成零钱,已知我们有许多面值5元,2元和1元的人民币。
编程实现:输入我们需要兑换的金钱数,然后我们用这些面值5元,2元和1元的人民币来兑换,要求每一种面值都至少有1张,然后输出有多少种兑换方式。
1.2.1 数据处理

数据表达:定义了整形的five,one,two,n
数据处理:    for(five=1;five<=n/5;five++){
        for(two=1;two<=(n-five*5)/2;two++){
            for(one=1;one<=n-five*5-two*2;one++){
                if(n==five*5+two*2+one)
                    printf("five=%d,two=%d,one=%d\n",five,two,one);
            }
        }
    }
    

1.2.2 实验代码截图

1.2.3 造测试数据

输入数据 输出数据 说明
13 输出成功
15 输出成功
18 输出成功

1.2.4 PTA提交列表及说明

编译错误:one少打了个e

2.代码互评(5分)
同学代码截图1:

同学代码截图2:

自己代码截图:

1.同学1的代码定义的变量比较多,整个代码读起来有点复杂
2.同学2的代码相对于1的更为简单易读,但把a,b,c写为five,one,two更好
3.我的代码比1和2都简洁易读
3.学习总结(15分)
3.1 学习进度条(5分)

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第10周 11 120 循环和分支 不会有flag写循环语句
第11周 16 150 调用函数 对如何调用函数的步骤还有些模糊
第12周 13 125 多分支结构
第13周 12 130 switch的多分支结构 还不能熟练使用switch的多分支结构,很多时候第一时间会想到if语句
第14周 15 230 while和do-while的循环结构 不能很快看出PTA的题目与while和do-while的循环结构之间的联系
第15周 21 240 break和continue的使用,循环的嵌套 不知道 什么情况下使用break和continue
3.2 累积代码行和博客字数(5分)

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

3.3.2 学习体会
PTA好难,博客园费神,程序猿的路不好走啊。

如何跳出多层循环:
使用多个break

posted on 2020-12-14 16:04  贺宏辉  阅读(115)  评论(1)    收藏  举报

导航