C语言I博客作业08
作业头( •̀ ω •́ )✧
这个作业属于哪个课程 | 首页 - 2020软件工程2班 - 中南林业科技大学涉外学院 - 班级博客 |
---|---|
这个作业要求在哪里 | 作业08 |
这个作业的目标 | 锻炼自己运用循环语句的能力,同时巩固其它方面的知识寻找自己的优缺点,熟悉循环语句的嵌套。 |
学号 | 20209147 |
一、本周教学内容&目标
第4章 循环结构 4.3熟悉break、continue的使用 4.4 熟悉使用循环的嵌套解决问题。
二、本周作业
1.PTA实验作业
2.代码互评
3.学习总结
三、作业格式
1.PTA实验作业(20分/题)
请再此处列出自己的排名图片,如:
从PTA题目集中选出2个你最满意的题目完成以下内容,选择题目难度越大,分值越高,每题20分(每项5分),内容要求如下:
1.17-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位、左对齐。
数据表达:定义整形变量i, j, N。
数据处理:使用双循环搭构框架,
%d*%d=%-4d
1.1.2实验代码截图
贴图展示代码,不要复制。请给出名字标识。
1.1.3 造测试数据
输出你的程序面向各种测试数据结果,除了题目给出的测试数据,可以自己再造其他临界数据,越多越好,并加上必要说明
输入:7
输出:
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=2 4*7=28 5*7=35 6*7=42 7*7=49
输入:1
输出:
1*1=1
1.1.4 PTA提交列表及说明
根据PTA提交列表,简要描述调试程序碰到的问题及解决办法。
提交列表说明:
说明:1.部分正确:处理数据那里行列位置搞反了,导致答案不正确。
2.多种错误:不仅第一个错误没解决,还把等号右边数字占4位、左对齐给改错了。
感悟:程序工作者就是这样,不知道这一步的b改动会发生什么,但我们却会一直坚持下去,因为我们都是在发现bug与寻找bug中成长
2.7-1 显示指定范围内的素数 (10分)
输入整数m,将所有大于1小于整数m的素数存入所指定的数组中(数组最多只存放100个素数,超过则提示“OVERFLOW”),输出各素数——若输入的m≤2,则提示“NO”,程序终止。注:素数(Prime Number),亦称质数,指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。
输入格式:
输入一个非0
的整数。
输出格式:
素数的输出格式为每个素数5列宽、右对齐、每行显示15
个。
输入样例:
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
输入样例:
568
输出样例:
OVERFLOW
输入样例:
1
输出样例:
NO
2.2.1 数据处理
数据处理:据题意本题定义整形变量i,d,j,m,x,z,k,n,a,b,c
双精度浮点型 y
数据表达:调用数学函数开平方,使用两次双循环,选择语句等。
for(i=2;i<m;i++){
j=i;
y=sqrt(i);
for(x=2;x<=y;x++){
a=1;
if(j%x==0){
a=0;break;
2.1.2实验代码截图
贴图展示代码,不要复制。请给出名字标识。
2.1.3 造测试数据
输出你的程序面向各种测试数据结果,除了题目给出的测试数据,可以自己再造其他临界数据,越多越好,并加上必要说明
输入 | 输出 | 说明 |
---|---|---|
1234 | OVERFLOW | 1到1234之间的素数超过一百个 |
123 | 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 101 103 107 109 113 | 1到123素数有这么多个 |
12 | 2 3 5 7 11 | 1到12素数有这么多个 |
2.1.4 PTA提交列表及说明
根据PTA提交列表,简要描述调试程序碰到的问题及解决办法。
、
提交列表说明:
注意必须写明每个错误点,你是怎么解决的。此项没写好,本题0
分
说明:1.编译错误:由于自己代码太过冗长,有两处地方分号没打。
感悟:做事要细心。
2.代码互评(5分)
找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。
同学代码截图
一号小宝贝:
二号小宝贝:
自己:
区别:首先,我自己的代码比他们长了许多。而且,用自己打的代码这题并没有拿到满分,同学提醒我是没有运用数组,恰好二号小宝贝用了
还有,同学的代码普遍把我简洁明了,这就是差距所在。
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第八周/10.19~10.25 | 15小时 | 270行 | 在屏幕上显示Hello World!学会了怎样用PTA进行写代码作业,学会了markdowm语法 | 无 |
第九周/10.26~11.1 | 12 小时 | 300行 | 求华氏温度对应的摄氏温度 常量,变量和数据类型 知道以后要怎样向别人提问 | 变量问题,输入输出格式 |
第十周/11.2~11.8 | 20小时 | 350行 | for循环,if else语句 | 对于&的用法不了解,输出时保留几位小数 |
第十一周/11.9~11.15 | 22小时 | 400行 | 自己定义函数 | 具体过程还是不太清楚 |
第十二周/11.16~11.22 | 23小时 | 450行 | 学习分支结构 | 无 |
第十三周/11.23~11.29 | 20小时 | 450行 | 学习分支结构中的switch语句 | 对于何时使用switch还不清楚 |
第十四周/11.30~12.06 | 30小时 | 500+行 | 学习循环语句中的while语句和do——while语句 | 各类语句的嵌用还不熟练 |
第十六周/12.14~12.20 | 30小时 | 500+行 | 熟悉break、continue的使用 熟悉使用循环的嵌套解决问题。 | 循环嵌套时结构还不清楚 |
3.2 累积代码行和博客字数(5分)
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结|
3.3.2 学习体会
请回顾自己的本周的学习过程,描述学习感受,也可以提出你不理解的地方、对教师教学建议等。如果你有新的想法或者新的方法,请及时记录下来
体会:这两周给我的学习体会最大的便是积累的重要性了,古人云。水滴石穿不是没有道理的,对于我们这个专业更是如此。
最近做题愈发感觉力不从心了,有时候看到题目都要楞好久,这可能与题目难度有点关系,更重要的是自己能力没有得到提升,临近期末出现这样的情况压力还是蛮大的,希望能够有同学分享下方法,在此谢过了!
很感谢有博客园这个平台,能让我见识到这么优秀小伙伴的学习方法和解题方式,希望大家能够在以后的日子里多多帮助本菜鸡,快乐学习,共同成长!
思考题:如何跳出多重循环?
一、使用带有标号的的break语句,或者每层循环都使用break跳出。
二、外层的循环条件收到内层的代码控制限制。
三、使用try/catch强制跳出循环。
四、使用goto语句。