C语言I博客作业08

作业头

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/CST2020-4
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-4/homework/11613
这个作业的目标 努力拿个高分,再接再厉,搞懂不会的知识点
这个作业在那个具体方面帮助我实现目标 循环结构的再次学习,并熟悉break 、 continue的使用,学习使用使用循环的嵌套解决问题。
参考文献 B站 百度《C语言程序与设计》
学号 20209043

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

1.1 幸运彩票 (15分)

彩票的号码有 6 位数字,若一张彩票的前 3 位上的数之和等于后 3 位上的数之和,则称这张彩票是幸运的。本题就请你判断给定的彩票是不是幸运的。

1.1.1数据处理

数据表达: 用整型int定义了n,i,m。用来执行for循环的变量。在定义了sum和count,用来计算三位数字之和,并且进行比较。
数据处理:输入一个六位数,先进行后三位数字之和,在进行前三位数之和,然后进行比较,得出答案。表达式:【while(num>1000){sum+=num%10;num/=10;}】【while(num<1000&&num>0){count+=num%10;num/=10;}】

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
233008 You are lucky! sum=count
123456 Wish you good luck. sum !=count

1.1.4 PTA提交列表及说明

答案正确:一开始就是答案正确,肯定有人会觉得我太厉害了,No!!不是你想象的那样子,第一个代码是我一开始写的,但是我在测试总是出现错误,再次之下请同学来帮忙,他教我写第二个代码,就出现这种情况。
运行超时:在算前三个数字之和的时候,在while()的条件中加了一个【count>1】;
答案错误:测试完全正确,但提交出现答案错误,连个部分正确都不给,我是真的醉了【助教帮忙解一下这个问题,第一个代码!!看能不能解出来】【万分感谢!!,我问的人都不会,真的!!】

1.2 显示指定范围内的素数 (10分)

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

1.2.1 数据处理

数据表达:用整型int 定义count , I , m, n, z;m用于输入数字,count用于计算素数的多少,其他则使用在for中
数据处理:先算出100个素数的位置,进行判断;在进行素数的判断,一行15个换行。

 for(z=2;z<=m;z++){
    n=sqrt(z);
    for(i=2;i<=n;i++)
        if(z%i==0)
            break;
    if(i>n){  
        printf("%5d",z);
        count++;
        if(count %15 ==0){
            printf("\n");}
    }

1.2.2 实验代码截图

1.2.3 造测试数据

输入数据 输出数据 说明
1 No 输入的数字小于2
568 OVERFLOW 素数的个数超过100个
10 2 3 5 7 在范围之内

1.2.4 PTA提交列表及说明

部分正确:

       if(count %15 ==0){
             printf("\n");}
    }

这里少了if需要的括号,运行结果第一行和第二行素数之间相差五行;导致答案部分正确。

答案正确:加了括号之后就对了。

2.代码互评(5分)

同学1代码截图:

-----------分割线-------------

同学2代码截图:

-----------分割线-------------

自己的代码解图:

比较

1.跟同学1差别在,她是使用了一次for循环,将前三位数字的求和巧妙化了,而我使用了两次while循环,没用很好的将前三位数字的和将其计算,在一些方面还得加油。
2.跟第二位同学来比,他将这六位数写成【1%d1%d1%d1%d1%d1%d】,在知道可以这样,我来了一句,牛逼!!如果是这样,那这道题很简单,我们把这题复杂化了。

3.学习总结(15分)

3.1 学习进度条(5分)

周/日期 这周所花的时间 代码行学到的知识点 简介目前比较迷惑的问题
11/1——11/8 15h how(),sqrt()
11/9——11/15 17h 函数函数的被动定义
11/16——11/22 18.5h 分支结构 字节变量的使用
11/23——11/29 14h switch的分支结构
11/30——12/7 12h 熟悉使用while和do-while结构解决问题 while与其他的套用
12/8——12/13 16h for循环的嵌套 所学习的知识灵活运用

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

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

3.3.1 学习内容总结

3.3.2 学习体会

感悟:
1.现在的作业不能像以前那样子了,以前只是一个知识点,学会正确使用,而现在知识点多了,要活学活用,现在是会用和在解题方面要灵活使用语句,尝试多种方法。看是在浪费时间,其实效果在哪里我问不知道。方正在思维方面有好处。
2.临近期末,复习的脚步也近了。
3.吐槽一下:pta在一些方面真的会气或者弄死一个学习代码的好青年。

posted @ 2020-12-14 09:21  w庆  阅读(589)  评论(1)    收藏  举报