代码改变世界

C语言I博客作业09

2019-11-22 21:42  Sapphire丶  阅读(727)  评论(0编辑  收藏  举报
问题答案
这个作业属于哪个课程 c语言程序设计Ⅱ
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/10027
我在这个课程的目标是 熟练掌握本章内容,早日提前把C语言学完
这个课程在哪个方面具体帮助我实现目标 continue的运用与循环的嵌套使用
参考文献 C语言程序设计 百度百科

 

1.pta实验作业

 

 

1.1 7-1 打印九九口诀表 (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*1N*N的部分口诀表。

输入格式:

输入在一行中给出一个正整数N(1N≤9)。

输出格式:

输出下三角N*N部分口诀表,其中等号右边数字占4位、左对齐。

 

1.1.1数据处理

由题意可得,已设置好正整数N,只需设置行的未知数“i”,与列的未知数“j”,即可。

 

1.1.2实验代码截图

 

1.1.3造测试数据

 

输入数据 输出结果及结论
4 从1到4的乘法口诀表
9 从1到9的乘法口诀表

 

 

 

 

 

 

 

1.1.4提交列表及说明

 

 

 

第一次多次错误:在for中的括号答案应该是 i<= N,第二个for的括号里应该是 j <= i;

第二次部分正确:在输出printf的时候我将最后的变量 i与j的位置放反了,导致答案一直是错误的。

 

2.题目名

 

7-3 找完数 (20 分)
 

所谓完数就是该数恰好等于除自身外的因子之和。例如:6=1+2+3,其中1、2、3为6的因子。本题要求编写程序,找出任意两正整数m和n之间的所有完数。

输入格式:

输入在一行中给出2个正整数m和n(1<mn10000),中间以空格分隔。

输出格式:

逐行输出给定范围内每个完数的因子累加形式的分解式,每个完数占一行,格式为“完数 = 因子1 + 因子2 + ... + 因子k”,其中完数和因子均按递增顺序给出。若区间内没有完数,则输出“None”。

输入样例:

2 30

输出样例:

6 = 1 + 2 + 3
28 = 1 + 2 + 4 + 7 + 14
 

2.2.1 数据处理

数据表达:读题可得要求n.m之间的函数,已经给出固定变量,所以定义整型变量n,m, i , j ,a, count.

将n,m通过是scanf取整。

数据处理:通过for循环不断提出n,m之间的数,再配合if语句设定条件,筛选出n,m中的完数,

通过循环的嵌套for if  for if来得出最后答案。

 

 

2.2.2实验代码截图

 

 

2.2.3造测试数据

输入数据输出数据说明
2 30

例题所示

得出例题答案
2 8 0 没有完数得到情况仍然符合
2 1354 0 随机取数,看能否吻合题目结果

 

 2.2.4提交列表和说明

 

说明:第一次运行超时:将第一次for循环中的J++打成了 i ++;导致程序一直运算下去没有停止,所以出现运行超时。

一开始看了半天没有发现错误。下次写代码是一定要细心。

第二次多种错误:格式错误和答案错误,for循环的括号后面还是有时候不小心加上了分号。

等号两边有一个忘记隔开了。

 

2.代码互评

(李泽基)

 

 

(自己)

 

这是最后一道题的代码,两份代码基本上都不相同,但是明显第一份代码简单明了很多。

之间通过定义整型变量与字符c,设置好,再通过for循环的循环嵌套之间得出答案。

我是百度了网上的一些算法,再通过if else来不断考虑各种情况,来分情况讨论,

我从一开始就认为题目应该比较难,所以考虑的比较复杂,但是两个代码的出的结果是一样的,所以说以后要注意改进。

 

3.学习总结

3.1 学习进度条

周/日期这周所花的时间代码行学到的知识点简介目前比较迷惑的问题
第九周 11个小时 450 学会使用break,continue 对continue的使用
第八周 7个小时 400 能够使用while和do-while 对于一些while判断条件不明朗
第七周 7个小时 300 学会使用switch 对于switch的使用不够熟练
第六周 6个小时 260 学会了使用if ,for的嵌套
第五周 6个小时 200 for循环语句和自定义函数 自定义函数时有时数学逻辑差
第四周 7个小时 260 for循环语句 不知道如何判断数据是整型还是浮点型
第三周 8个小时 300 if-else语句和else-if多分支结构 自主判断运用哪一种函数

 

 

 

3.2累计代码行和博客字数

时间博客字数代码行数
第一周 600 50
第二周 800 70
第三周 1200 90
第四周 1400 100
第五周 1600 160
第六周 1700 240
第七周 2000 300
第八周 2100 350

 

第九周

 

 

 

2200 400

 

 

 

   4.学习总结

                                                   任重而道远,望继续努力