C语言I博客作业09

这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/10029
我在这个课程的目标是 很好的编写程序,提高自己的准确率和速度
这个作业在那个具体方面帮助我实现目标 通过PTA上的代码作业让我发现自己的错误并不断改正
参考文献 《C语言程序设计》,CSDN编程社区,《提问的智慧》

一、PTA实验作业

我的排名

1.1 打印九九口诀表

  • 下面是一个完整的下三角九九口诀表:
    11=1
    1
    2=2 22=4
    1
    3=3 23=6 33=9
    14=4 24=8 34=12 44=16
    15=5 25=10 35=15 45=20 55=25
    1
    6=6 26=12 36=18 46=24 56=30 66=36
    1
    7=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,输出从1
    1到NN的部分口诀表。
    输入格式:
    输入在一行中给出一个正整数N(1≤N≤9)。
    输出格式:
    输出下三角N
    N部分口诀表,其中等号右边数字占4位、左对齐。
    输入样例:
    4
    输出样例:
    11=1
    1
    2=2 22=4
    1
    3=3 23=6 33=9
    14=4 24=8 34=12 44=16

1.1.1数据处理

  • 数据表达:变量“i,j,N”;变量值的来源“输入,算术运算”;变量类型“都是整型变量int”
  • 数据处理:流程结构:循环结构,伪代码
    C语言I博客作业09_第1张图片

    1.1.2实验代码截图

    C语言I博客作业09_第2张图片

    1.1.3造测试数据

    输入 输出 说明
    4 C语言I博客作业09_第3张图片 检验代码可运行输出正确答案
    7 C语言I博客作业09_第4张图片 打印7乘7的乘法表
    1 C语言I博客作业09_第5张图片 打印的是1乘1的乘法表
    9 C语言I博客作业09_第6张图片 打印9乘9的乘法表

    1.1.4PTA提交及列表

    C语言I博客作业09_第7张图片
  • 1.部分错误:虽然可以打印出乘法表,但是和题目要求的格式会不一样
  • 改正方法:将printf ("%d%d=%d",i,j,ij)改为printf ("%d%d=%d",j,i,ij)
  • 2.多种错误:各种面值类型的钱在数量的输出时没有加空格然后也忽略了题目的“等号右边数字占4位、左对齐”这一要求
  • 改正方法:在输出时在每个数据后面加上空格,同时在数据输出时将printf ("%d%d=%d",j,i,ij)改为printf ("%d%d=%-4d",j,i,ij)

    2.1 换硬币

  • 将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?
    输入格式:
    输入在一行中给出待换的零钱数额x∈(8,100)。
    输出格式:
    要求按5分、2分和1分硬币的数量依次从大到小的顺序,输出各种换法。每行输出一种换法,格式为:“fen5:5分硬币数量, fen2:2分硬币数量, fen1:1分硬币数量, total:硬币总数量”。最后一行输出“count = 换法个数”。
    输入样例:
    13
    输出样例:
    fen5:2, fen2:1, fen1:1, total:4
    fen5:1, fen2:3, fen1:2, total:6
    fen5:1, fen2:2, fen1:4, total:7
    fen5:1, fen2:1, fen1:6, total:8
    count = 4

2.1.1数据处理

  • 数据表达:变量“a,b,c,count,x”;变量值来源“输入,赋值运算,算数运算”;变量类型“都是整型变量int”
  • 数据处理:流程类型:循环结构,伪代码
    C语言I博客作业09_第8张图片

    2.1.2实验代码截图

    C语言I博客作业09_第9张图片

    2.1.3造测试数据

    输入 输出 说明
    13 C语言I博客作业09_第10张图片 输入题目给出的相同示例,表明程序可以得出正确答案
    5 C语言I博客作业09_第11张图片 当输入零钱数为5时没有相对应的硬币输出
    8 C语言I博客作业09_第12张图片 当输入零钱数为8时相对应的硬币输出方法有一种
    24 C语言I博客作业09_第13张图片 当输入零钱数为24时相对应的硬币输出方法有20种

    2.1.4PTA提交列表及说明

  • 编译错误:打的太快了把stdio写成了sdtio,while后面忘记加分号了,输出数据n时忘记要与前面的数据之间有空格
  • 改正方法:把sdtio改成stdio,在while后面加上“;”,在输出n时加一个空格在%d前面。

    二、代码互评

    同学1代码

    C语言I博客作业09_第14张图片

    我的代码

    C语言I博客作业09_第15张图片
  • 1.这为同学用的数据输入的字母是x而我用的是N;
  • 2.两份代码总体上没有什么区别,但是细节方面,在内不循环体中该同学的代码更规范一些。

    同学2代码

    C语言I博客作业09_第16张图片

    我的代码

    C语言I博客作业09_第17张图片
  • 1.这位同和我都少定义了一个变量,直接在输出时将total用其它的数据相加得到,这样使代码更简洁
  • 2.这位同学的代码和我的并没有什么不同,都是用for语句循环从而得到结果

    三、学习总结

    3.1学习进度条

    周/日期 这周所花时间 代码行 学到的知识点的简介 目前比较迷茫的问题
    9/19-9/22 23小时 90行 学习了break和continue语句及for语句的嵌套循环结构 不是很了解for语句的嵌套循环的运行步骤
    8/12-8/16 22小时 126行 学习了do-while和while语句,并运用该循环语句进行代码的编写 不懂怎样表达“当输入回车键时,输入结束”这个语句
    7/4-7/8 22小时 114行 运用switch语句对给定的题目要求进行计算 一些switch语句的用法不是很了解
    6/27-6/31 24小时 120行 学习了if-else语句的嵌套 逻辑运算符的一些用法不是很懂
    5/21-5/25 24小时 91行 自定义函数并调用该函数对数学函数进行运算 有点不太分的清楚实参和形参
    4/15-4/18 17小时 82行 for语句,循环结构 有点不太会定义条件
    3/9-3/15 15小时 78行 学会了if-else语句,学会了分支结构和双精度浮点型变量 对于函数的表达还不是很清楚

    3.2累积代码行和博客数

    C语言I博客作业09_第18张图片

    3.3学习内容总结和感悟

  • 3.3.1学习内容总结
    C语言I博客作业09_第19张图片
  • 3.3.2学习体会
  • 通过这个礼拜的学习,学习了break和continue语句及for语句的嵌套循环结构,在完成PTA的作业时发现,自己没有想去用到break和continue语句去写代码,并且好像不是特别懂for语句的嵌套循环的规则,但是在做题的不断尝试摸索及看书上的讲解,犹如拨开云雾见明月一般,它的运算规则在脑袋里渐渐的清晰了,这也告诉我应该要多实践去做题,然后还有就是要记住在scanf输入时要加&(进两次做题都会忘了加,然后找半天也找不到问题,恍然发现时想把自己揍一顿)。

你可能感兴趣的:(C语言I博客作业09)