• C语言I作业09


    问题 答案
    这个作业属于哪个课程 C语言程序设计II
    这个作业要求在哪里 作业链接
    我在这个课程的目标是 能够熟练运用C语言,能够自己制作一些简单的软件
    这个作业在那个具体方面帮助我实现目标 学习break语句和continue语句
    参考文献 C语言程序教材,百度

    1.1打印九九口诀表

    本题要求对任意给定的一位正整数N,输出从11到NN的部分口诀表。

    1.1.1数据处理

    数据表达:设置了 n,i,j;三个变量,n代表正整数,均为整型变量
    数据处理:

    伪代码

    include<stdio.h>

    int main()
    {
    int n; //设置n代表正整数//
    int i,j;
    scanf("%d",&n); //输入整数//
    for(i=1;i<=n;i++) //使用for循环语句对乘法表第一个数字进行选择//
    {
    for(j=1;j<=i;j++) //使用for循环对第二个数字选择//
    {
    printf("%d%d=%-4d",j,i,ji); //输出乘法表//
    if(j==i) //使用if进行判断当i=j时进行
    printf(" ");
    }
    }
    return 0;
    }

    1.1.2实验代码截图

    1.1.3造测试数据

    输入数据 输出数据 说明
    1 1*1=1 随机测试
    2 11=1;12=2;2*2=4 随机测试

    1.1.4PTA提交列表及说明

    1.部分正确:忘记设置换行。
    2.答案正确:从头看了一遍发现错误。

    1.2换硬币

    将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?

    1.2.1数据处理

    数据表达:设置了N, A, B, C, total, count;等几个变量,由题目意思给出,均为整型变量。
    数据处理:

    伪代码

    include<stdio.h>

    int main()
    {
    int N, A, B, C, total, count; //设置变量N代表零钱数额,A,B,C代表各个数额的硬币,total代表硬币数量,count代表换法总数//
    count=0;
    scanf("%d", &N); //输入零钱数额//
    for(A=(N/5); A>0; A--) //使用for循环先计算五分的硬币数量,每循环一次五分数量都会减少//
    {
    for(B=(N-A5)/2; B>0; B--) //根据上一步计算出的五分的数量算出剩余钱的数量,再计算出所需2分的数量//
    {
    for(C=N-A
    5-B2; C>0; C--) //最后剩下的就是一分的数量
    {
    if(5
    A+2*B+C == N) //输出条件判断//
    {
    count++; //每循环一次都会累加一次,计算换法总数//
    printf("fen5:%d, fen2:%d, fen1:%d, total:%d", A, B, C, A+B+C); //输出//
    printf(" ");
    }
    }
    }
    }
    printf("count = %d", count); //最后输出换法总数//
    return 0;
    }

    1.2.2实验代码截图

    输入数据 输出数据 说明
    13 [如图] 题目给出的数据
    21 随机数据

    1.2.4 PTA提交列表及说明

    1.编译错误:有个for循环后面没打括号。
    2.答案错误:没有设置换行。
    3.编译错误:重新打一遍发现有一个分号没打。

    2、代码互评

    同学代码

    我的代码

    • 我的代码没有使用if语句进行判断,而他的使用了。更复杂一些。
    • 我们都使用了do-wihle语句,而且我们的判断条件都相同。但是我的代码却短了很多。
    • 要学好去思考更好的方法,好的方法可以节约很多的时间。要学会去学习别人的方法,思考自己的代码有什么不足,有什么可以进步的地方,这样才能进步。

    3、学习总结

    3.1 学习进度条

    日期 这周所花时间 代码行 学到的知识简介 目前比较迷惑的问题
    10/7--10/13 7个小时左右 70左右 if-else语句,算术运算和赋值运算 有些代码的含义和一些函数的含义
    10/14--10/20 8个小时左右 200行左右 for循环语句的使用 对for循环结构和if-else语句的使用不太熟练
    10/21--10/27 6个小时左右 120行左右 定义函数与调用 对函数的使用还不太熟练
    10/28--11/3 8个小时左右 250行左右 学习程序解析和多分支else-if语句 用太多if-else会比较混乱
    11/4--11/8 9个小时左右 230行左右 学习多分支结构switch语句的使用 大问题没有,就是总会粗心漏打或打错
    11/9--11/14 9个小时左右 250行左右 学习while和do-while语句的使用 对do-while语句还不太理解
    11/15--11/22 7个小时左右 240行左右 学习break语句和continue语句 对continue语句还不太熟练

    3.2 累积代码行和博客字数

    3.3 学习内容总结和感悟

    3.3.1 学习内容总结

    3.3.2 学习体会

    • 已经学习这个有一段时间了,已经学过的东西还是有很多不太理解,尤其是PTA有时候一道题就是一个多小时。但是越是去深入的学习越是能感受到其中的魅力。想要学好这
      一门,我必须要付出更多的时间。我相信一定能学好。
    • 想要学好这一门就要经常去练习,熟能生巧。还可以自己去找题目做,在不断的练习中会逐渐进步。
    • 有时候发现发现别人的代码比自己的简短好多,才发现自己还有很多的不足,要多向别人学习,取长补短。
    • 学习的难度越来越大,感到有些吃力,这周所花费的时间减少了导致熟练度下降。
  • 相关阅读:
    CentOS 5.5 安装 Oracle 11gR2 并随系统启动
    使用blockrecover 对有坏块的数据文件进行恢复
    用yum下载安装包
    PInvoke时候StringBuilder的陷阱
    mac:添加环境变量
    win8:metro app UI 设计
    用户体验&UI 实用小技巧
    Win8:To Do List Demo
    JavaScript语言精粹 ——笔记
    win8: 确保 WinJS.xhr 重新发送请求
  • 原文地址:https://www.cnblogs.com/lft791110/p/11908314.html
Copyright © 2020-2023  润新知