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

    C语言I博客作业08

    作业头

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/CST2020-1
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11530
    这个作业属于那个课程 C语言程序设计II
    我在这个课程的目标是 灵活循环
    这个作业在那个具体方面帮助我实现目标 熟悉break、continue的使用
    参考文献 c语言程序设计(第三版)
    学号 20208955

    二、PTA实验作业(20分/题)

    排名图片

    1.1

    第一题

    实验4-1-10 兔子繁衍问题 (15分)
    一对兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。假如兔子都不死,请问第1个月出生的一对兔子,至少需要繁衍到第几个月时兔子总数才可以达到N对?

    1.1.1

    数据处理

    数据表达:使用了变量 整型m,n,a,b,s,j; n是输入的对数,m是兔子总数达到N最少需要的月数,s是大兔子和小兔子的总数,j是转换时用的,a小兔子数,b是大兔子数
    数据处理: 表达式:a = a + j,s = a + b;流程结构:先循坏累加兔子数,主要规律是前一个月的大兔子对数就是下一个月的小兔子对数,前一个月的大兔子和小兔子对数的和就是下个月大兔子的对数。计算总数。注意用一个变量来转换。
             
    

    1.1.2

    实验代码截图

    1.1.3

    造测试数据

    数据 结果 说明
    1 3 第一个月的兔子数
    2 3 没有新增兔子的可能
    8 6 正常值

    1.1.4

    PTA提交列表及说明

    说明

    多种错误:开始时没用字母来储存转换。
    编译错误:没明白问题的规律,大兔子和小兔子弄混。
    

    1.2

    第二题

    7-1 显示指定范围内的素数 (10分)
    输入整数m,将所有大于1小于整数m的素数存入所指定的数组中(数组最多只存放100个素数,超过则提示“OVERFLOW”),输出各素数——若输入的m≤2,则提示“NO”,程序终止。注:素数(Prime Number),亦称质数,指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。

    1.2.1

    数据处理

    数据表达:定义了 整型变量 m,i,j,n,ch[100],s;m是输入的数,i是0到输入数之间的数,a积累多少的素数,n转换sqrt(i),ch[100]数组储存数组,s循环储存。
    数据处理:  表达式:n=sqrt(i),j%15==0;流程结构:先循环0到输入数字间的数字,再循环判断之间的数字有无为素数,判断素数的个数超过了100,则不符合条件,循环将a个素数储存在ch里面,循环将储存在ch里的a个素数输出。
    

    1.2.2

    实验代码截图

    1.2.3

    造测试数据

    数据 结果 说明
    1 NO 不符合条件
    800 OVERFLOW 也不符合条件
    99 2 3 5 7 11 13······ 3 79 83 89 97 和100是同样的

    1.2.4

    PTA提交列表及说明

    说明

    部分正确: 第二个和第三个测试点错误,不是直接输出“OVERFLOW”,在前面还是有输出素数,是循环弄错了。
    
    部分正确:后面将循环换了一下,但是还是有很大的错误。
    

    三、代码互评

    同学代码

    第一位

    第二位

    自己

    第一位

    • 用了fiag来标记素数,不是就为0。

    • 同样都用了数组。

    • 同学进行了两次数组的大小判断,更精准。

    第二位

    • 这位同学没有用数组,先判断是不是大于100,在输出。

    • 得循环两次判断,忽然第一位同学有相似。

    3.1学习总结(15分)

    3.1 学习进度条(5分

    周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    第八周 6小时 262 怎么输出内容 一些结构的定义
    第九周 8小时 670 开始输入及套用公式 字符的一些定义
    第十周 24小时 593 数组 迷糊流程,字符串,以及对题目的处理
    第十一周 30小时 1034 函数 宏定义,对题目不能很好的反应过来
    第十二周 32小时 2431 EOF等一些基本知识,接触到了c++ 对于一些函数还不能很好的运用
    第十三周 32小时 2742 switch的灵活运用 用函数去表达素数
    第十四周 28小时 2324 which,do while 循环 将之前所学的知识结合起来运用,循环会乱
    第十五周 28小时 2453 熟悉break、continue的使用 循环逻辑有点混乱

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

    时间 博客字数 代码行数
    第八周 585 262
    第九周 1031 670
    第十周 1289 593
    第十一周 1413 1034
    第十二周 1664 2431
    第十三周 1998 2742
    第十四周 2453 2324
    第十五周 1902 2453

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

    3.3.1 学习内容总结

    3.3.2 学习体会

    计划赶不上变化,老是决定做的事情没有去做,上周说多看教材,后面又因等等事情没有去完成,说直接一点:太懒了!就是有拖延症一样,然后这次作业也觉得没有之前这么得心应手了,开始也有难度了,有部分也是因为自己之前学过的没有好好去巩固吧,用的时间就挺多的。然后最后阶段了,也要开始全面复习了,希望能将之前没有弄完,弄好的,全都补回来。

    怎么用break跳出多重循环:

    • 一般break只能跳出离它最近的for循环。

    • 退出多重循环可以使用goto语句,但是可能造成程序不稳定,还是不要使用。

    • 可以设置标记,如:flag。

    • 使用return 0;也可以跳出。

  • 相关阅读:
    RMAN异机还原遭遇ORA-19698错误案例
    Linux sendmail发送邮件失败诊断案例(一)
    Oracle system identifier(SID) "xxx" alread exits. Specify another SID
    ORA-12516:TNS:listener could not find available handler with matching protocol stack
    ORACLE编译失效对象小结
    Win7 安装SQL SERVER 2012需要SP1补丁
    SQL SERVER出现大量一致性错误的解决方法
    MS SQL统计信息浅析下篇
    Dell PowerVault TL4000 磁带机卡带问题
    虚拟机VMWARE上ORACLE License 的计算
  • 原文地址:https://www.cnblogs.com/hewenhui/p/14130673.html
Copyright © 2011-2022 走看看