zoukankan      html  css  js  c++  java
  • C语言I博客作业08

    作业头

    这个作业属于哪个课程 C语言程序设计II
    这个作业要求在哪里 <作业的链接>
    我在这个课程的目标是 熟悉break、continue的使用并学会使用循环的嵌套解决问题
    这个作业在那个具体方面帮助我实现目标 pta作业的严格要求,提高逻辑思考能力。
    参考文献 《C语言程序与设计》、《C Primer Plus》、百度
    学号 20209038

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

    • 1.1 7-1 显示指定范围内的素数

    输入整数m,将所有大于1小于整数m的素数存入所指定的数组中(数组最多只存放100个素数,超过则提示“OVERFLOW”),输出各素数——若输入的m≤2,则提示“NO”,程序终止。注:素数(Prime Number),亦称质数,指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。
    输入格式:
    输入一个非0的整数。
    输出格式:
    素数的输出格式为每个素数5列宽、右对齐、每行显示15个。

    1.1.1 数据处理

    数据表达:
    定义了整形变量m, i, j, t。
    数据处理:
    541是从2开始的第100个素数故如果n>541就输出OVERFLOW
    1不为素数故如果m==1则输出NO。
    然后利用循环输出素数。累加再利用if(j%15==0)printf("
    ");实现换行
    

    1.1.2实验代码截图

    1.1.3造测试数据

    输入数据 输出数据 说明
    100 输入样例
    568 OVERFLOW 输入样例
    1 NO 输入样例

    1.1.4 PTA提交列表及说明

    提交列表说明:

    1.编译错误。需要的括号太多了,看的眼花少打了一个。
    2.多种错误。把一些可以删去的括号删去了,让代码看起较清晰一些。但是还是有答案错误和格式错误。
    - 格式错误:没有实现5列宽、右对齐每十五给素数换行。
    - 答案错误:没有实现超过100个素数再输出OVERFLOW。
    2.答案正确。
    

    1.2 7-2 打印九九口诀表

    7-2 打印九九口诀表 (15分)
    下面是一个完整的下三角九九口诀表:

    1*1=1   
    1*2=2   2*2=4   
    1*3=3   2*3=6   3*3=9   
    1*4=4   2*4=8   3*4=12  4*4=16  
    1*5=5   2*5=10  3*5=15  4*5=20  5*5=25  
    1*6=6   2*6=12  3*6=18  4*6=24  5*6=30  6*6=36  
    1*7=7   2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49  
    1*8=8   2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64  
    1*9=9   2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81  
    本题要求对任意给定的一位正整数N,输出从1*1到N*N的部分口诀表。
    
    输入格式:
    输入在一行中给出一个正整数N(1≤N≤9)。
    
    输出格式:
    输出下三角N*N部分口诀表,其中等号右边数字占4位、左对齐。
    

    1.2.1 数据处理

    数据表达:定义了整数型变量i,j,N;
    数据处理:运用for的嵌套实现数乘表的循环输出for (i = 1;i <= N;i++){for (j = 1;j <= i;j++){...} ...}
    

    1.2.2 实验代码截图

    1.2.3 造测试数据

    输入数据 输出数据 说明
    4 样例
    9 样例

    1.2.4 PTA提交列表及说明


    提交列表说明:

    1.格式错误。代码怎么看都感觉没毛病,后来才知道%-4d的存在。数字占4位、左对齐。
    2.答案正确。改正后正确。
    

    2.代码互评(5分)

    • 同学代码截图
      同学1的代码

    同学2的代码

    • 自己改良的代码截图

    • 比较:

    • 第一位同学。第一同学直接找出第100位素数然后限制n的数量来达到题目数组最多只存放100个素数,超过则提示“OVERFLOW”的要求。结合if语句和for语句的完成题目

    • 第二位同学。第二位同学,运用了数组。因为题干部分有提到数组,不过可以不使用数组,写得有点复杂。第二位同学对于满足数组最多只存放100个素数,超过则提示“OVERFLOW”的要求是运用if语句实现的。

    • 自己的代码。我的代码和第一位同学的输入相同,不过我删去了一些,可以去掉的大括号让代码容易阅读一些。相比第二位同学也没有运用数组的知识。

    3.学习总结(15分)

    3.1 学习进度条(5分)

    周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    12/8——12/14 14h 568 break、continue的使用和使用循环的嵌套解决问题 输出格式相关的语言并不熟悉

    3.2 累积代码行和博客字数(5分)

    时间 博客字数(字符) 代码行数
    第一周 772 386
    第二周 1108 578
    第三周 3245 643
    第四周 3503 430
    第五周 3943 675
    第六周 3736 538
    第七周 3842 572
    第八周 3764 568

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

    3.3.1 学习内容总结

    3.3.2 学习感悟

    *感悟:
    1.格式控制符号方面还得多加强熟悉。
    2.要有提前学习第意识。

  • 相关阅读:
    如何用VSCode手动编译Ace Editor
    libuv源码分析
    二叉平衡查找树---红黑树
    tcp滑动窗口与拥塞控制
    ceph架构剖析
    腾讯面试总结
    协程的实现原理
    dhcp协议交互报文
    libuv源码分析前言
    Protobuf使用规范分享
  • 原文地址:https://www.cnblogs.com/xianqipiaopiaotangxiaoyi/p/14131388.html
Copyright © 2011-2022 走看看