|这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/SE2020-1 |
| ---- | ---- | ---- |
|这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-1/homework/11626 |
|这个作业的目标| 继续学习循环结构,break,嵌套结构等为以后的学习作铺垫 |
|学号 | 20209108 |
1.PTA实验作业
1.1题目名1
输入整数m,将所有大于1小于整数m的素数存入所指定的数组中(数组最多只存放100个素数,超过则提示“OVERFLOW”),输出各素数——若输入的m≤2,则提示“NO”,程序终止。注:素数(Prime Number),亦称质数,指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。
- 1.1.1数据处理:用了m,i,j,a等变量;它们的值是通过赋值循环得来的;其中i,j是循环变量,m和a是整数型变量;
- 数据表达:
数据表达式:i%j==0;
流程结构:运用了顺序结构;分支结构和循环结构的嵌套语句;
1.1.2实验代码截图
1.1.3造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
100 | 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 |
样例 |
50 | 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 | 50个数字里面素数小于100;再根据能不能只被1和自身整除判断是不是素数进行输出 |
5000 | OVERFLOW | 根据能不能被1和自身整除判断是不是素数,又因为只能存放100个而5000里面的素数超过100 |
1 | NO | 题目中已经说了m大于1,所以输出NO |
1.1.4PTA提交列表及说明
出现的问题及改正:
<1>第一次的编程错误是因为flag=1的后面缺少了一个;后面加上就可以了;
<2>第二次答案错误是因为我不会十五个数换行,后来在网搜问同学改成 if (a%15==0) {printf ("%5d", i); printf ("\n");就好了;
1.2题目2
彩票的号码有 6 位数字,若一张彩票的前 3 位上的数之和等于后 3 位上的数之和,则称这张彩票是幸运的。本题就请你判断给定的彩票是不是幸运的。
1.2.1数据处理
- 数据表达:运用了N,y,i,x,a,b,c,d,e,f;等变量,其中i是循环变量,N,y,x,a,b,c,d,e,f是整数型,其中是赋值;
- 数据处理:
数据表达式:a+b+c==d+e+f
流程结构:运用了顺序结构,分支结构和循环结构的嵌套语句以及字符型;
1.2.2实验代码截图
1.2.3造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
2 233008 123456 |
You are lucky! Wish you good luck. |
样例 |
4 123456 456789 345678 789065 |
Wish you good luck. Wish you good luck. Wish you good luck. Wish you good luck. |
判断a+d+c是否等于d+e+f然后判断是祝你幸运 |
1 127231 |
Wish you good luck. | 判断出不相等就是祝你好运 |
1 111111 |
You are lucky! | 根据a+b+c==d+e+f可以判断猜对了输出You are lucky! |
1.2.4PTA提交列表及说明
出现的问题及改正:
<1>第一次作业是编译错误因为我的scanf里面少写了一个&,加上就可以了.
<2>第二次错误是因为我的输入%d没有控制字符大小,加%1d就可以了;
<3>第三次错误是因为我把printf的输出放在了for外面,其实应该放在for里面;
2.代码互评
- 同学代码:
*我的代码:
<1>第一位同学的代码写的很优秀,他用了我们以前学的知识很简洁的写了出来很好的复习了以前的知识,我应该好好向她学习;
<2>第二位同学的代码很优秀她提前预习了以后的知识,运用了数组,确实很优秀,还复习了switch case,很好的复习了以前的知识点;
<3>通过与两位同学的代码我认识到自己还有很大的不足,我的思路显得不是那么清晰,应该继续的努力;
3.学习总结
3.1学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较困惑的问题 |
---|---|---|---|---|
12.12—12.19 | 20小时 | 356 | 2106 | 学到了break等循环语句和嵌套语句等等 |
11.28—12.05 | 16小时 | 309 | 学到了循环结构while,还有 do while 等语句还有单循环等等 | 到底是怎样循环的 |
11.21—11.27 | 12小时 | 278 | 学会了分支结构的另一语句switch语句,了解了它的表达方式还学习了if语句和switch语句的镶嵌模型构造符合语句等 | 虽然会使用但是本质还是没有搞懂 |
11.15—11.20 | 13小时 | 255 | 学了分支结构的if else,elseif等语句,学了字符型数据的输入及用法 | 有些字符型函数没有搞的很明白 |
11.8—11.14 | 14小时 | 235 | 调用函数,生成乘方表和阶乘等 | 对函数的调用还不是很明白 |
11.1—11.6 | 10小时 | 195 | 学到了循环结构,掌握了for循环语句等 | 有时格式不知道怎么解决 |
10.25—10.31 | 13小时 | 175 | 华氏温度的求法等 | 表达式的应用 |
10.18—10.24 | 15小时 | 40 | Hello World!等简单句 | 无 |
3.2累积代码行和博客数
3.3学习内容总结和感悟
3.3.1学习内容总结
3.3.2学习体会
- 这一周同样是老样子学习了新的知识,老师是真的讲的不错,还希望继续保持住。
- 这周我感觉真的好难啊,我体会到代码的让人头秃的原因了,因为你使劲想也想不出来了,就会打击自信心,但是我希望我自己不要放弃,继续克服努力学习向大佬学习。
- 这次的作业我的天啊太难了,作业效率也很慢,问这个人那个人,后来才慢慢写出来。
- 我希望未来不仅要预习,随之而来的比较重要的是复习,要常复习以前的知识。
- 尽管作业让我感觉到难,但是我也不会放弃,越挫越勇。加油
如何跳出多重循环?
<1>在大循环后面加上break;
<2>使用goto语句但程序可能不稳定;
<3>设置标记,如果是for语句就改循环计数;
<4>写成函数return;
<5>直接修改外层循环条件:
<6>在外层循环设置判断条件;