C语言I博客作业09
问题|答案
-|-|-
这个作业属于哪个课程|C语言程序设计
这个作业的要求在哪里|作业要求
我在这个课程的目标是|熟悉掌握c语言程序设计基本使用方法
这个作业在那个具体方面帮助我实现目标|熟悉代码程序设计,熟悉使用break语句与continue语句的使用方法和两者区别
参考文献|《PTA程序设计类实验平台》百度百科,WPS office,《简书》,Xmind思维导图,dev c++,知乎,CSDN等
一.PTA实验作业
1.1打印九九乘法表
1.1.1数据处理
(1.)数据表达:定义了C,J,N的整型变量,定义整型变量C代表行,定义整型变量J代表列。
(1.)数据处理:使用了for(c=i;c<=n;c++)和for(j=1;j<=c;j++)的循环语句。
(3.)函数处理:运用int main()的主调函数。
int C,J,N;//定义输入的整数N,C为行,J为列
scanf("%d",&N)//输入N
do for(C=1;C<=n;C++)//进行for(初值 ;条件;递增)
{
for(J=1;J<=C;J++)//嵌套列的for循环。
{
输出printf("%d%d=%-4d",J,C,CJ)//输出行列相乘
}
END
1.1.2实验代码截图
1.1.3造测试数据
1.1.4PTA提交列表及说明
1.编译错误:尝试编写,在dev c++上编译调试出一个错误("%d%d=%-4d"CJ)中的*忘记打。
2.两个段错误:第一次显示段错误不知道什么意思,点开?号解释为程序发生数组越界,才发现把printf错打成scanf。
3.编译错误:printf("\n")的斜杠错打成/。
4.答案错误:第一个for循环中的C<=n错写成C<=10。
5.部分正确:输出部分J,C打反了。
1.2 7-3 找完数
所谓完数就是该数恰好等于除自身外的因子之和。例如:6=1+2+3,其中1、2、3为6的因子。本题要求编写程序,找出任意两正整数m和n之间的所有完数。
1.2.1数据处理
(1.)数据表达:设置了题目给定变量n,m表示输入的数字的范围,设置了i为完数的整型变量,j表示因子,sad为计数器。
(2.)数据处理:第一个for循环寻找完数,第二个for循环找因子,第三个for循环输出。
(3.)函数处理:运用了int main()的主调函数。
Int i,j,m,n,s,sad;//i为完数,j为因子,m,n为输入数字的范围,sad为计数器
for(i=m;i<=n;i++)//for(初始状态;终止状态;循环状态;)找完数
{
for(j=2;j<=i/2;j++)//for(初始状态;终止状态;循环状态;)找因子
{
for(j=2;j<=i/2;j++)//for(初始状态;终止状态;循环状态;)输出
END
1.2.2实验代码截图
1.2.3造测试数据
1.2.4PTA提交列表及说明
1.两个答案错误:上机课上有题类似,仿照思路写的,但两题是有差异的,少了输入部分。
2.两个多种错误:有多种错误, 格式错误和答案错误,格式错误是因为题目有要求输出格式之间要空格,答案错误是要把if(i/j0)改为if(i%j0)
3.编译错误:printf单词写错成print。
4.部分正确:设置的计数器用法错误。
二.代码互评论
我的代码
同学代码
-
区别:(1)关于做这个题目的思路大多数同学都是这两种,一种是先找出可以整除的数并保存到数组再求和判断要不要输出,另一种是先找出可以整除的数并保存到数组再求和判断要不要输出。(2)有位同学用到了[100]这种表示我没看懂,会百度一下,还有人用了continue语句。
-
总结和体会:每一个题目都会有很多不同的解题方法,有时候并不需要写太多题,我觉得一道题去想不同的方法去解决也是一种也好的学习方式,在代码互评时也可以学到新的知识。
三.学习
3.1学习进度条
周期/日期 | 这周所花时间 | 代码行 | 学习到的知识点介绍 | 目前比较迷惑的问题 | 解决方式 |
---|---|---|---|---|---|
第一周 | 一个中午左右 | 20行左右 | 第一次使用博客园以及接触PTA | 对于这门课程属于懵懂状态,仅仅只能明白字面意思。 | 网上百度查询相关课程资料 |
第二周 | 两个中午左右 | 30行左右 | 学会《智慧的提问》以及简单的代码数据分析 | 对于课程依旧陌生,但有了新的认识。 | 看c语言教材书籍 |
第三周 | 两天左右 | 90行左右 | 学习了if-else语法,赋值运算,阶梯价位计算等 | 遇到复杂的编程问题不知道如何开始。 | 在b站,慕课等平台观看零基础C语言入门课程 |
第四周 | 两天左右 | 一两百行左右 | 学会"for"循环语句的基本转换方法以及如何对自己的代码进行调试错误 | 对于整个程序编码设计流程还不够熟练,不能完全独立完成,总是要寻求同学老师的帮助 | 反复编译同一个题目,直到理解此题流程 |
第五周 | 三天左右 | 一两百行左右 | 学会调用函数的使用,求函数阶层等 | 对于整个程序编码设计流程还不够熟练,不能完全独立完成,总是要寻求同学老师的帮助 | 观看网课 |
第六周 | 三天左右 | 两百多行 | 学会熟悉多分支结构、字符型数据类型和逻辑运算符 | 在每次写PTA时寻找错误要找很久,更正很多遍才能正确,但相比以前构思时思路清楚很多 | 记忆逻辑运算符,字符型数据类型等字符 |
第七周 | 两天左右 | 两百行左右 | 学会使用swtich分支语句的使用,此次PTA作业都是用swtich语句编写 | 在构思PTA作业时不能很快就清楚题目思路是什么,每个题目花的时间太久了 | 询问同学的构思方法,加以学习。 |
第八周 | 一两天 | 两百多行 | 熟悉使用while和do-while结构解决问题 | 还是相同的摸不到思路的问题,很多时候不知道如何开始编写 | 花更多的时间去学习。 |
第九周 | 两天 | 一两百行 | 学会熟悉使用break语句与continue语句,分清楚两者之间的联系和区别 | 感觉PTA一次比一次难琢磨,现在有点害怕写PTA了学的东西越来越多,自我觉得学的不怎么样 | 脚踏实地的去认真研究,花时间是重点。 |
3.2累积代码行和博客字数
3.3学习内容总结
3.3.1感悟
(1.)本周学习了break语句和continue语句,明白了两者的区别break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句,如果没有break语句,则将成为一个死循环而无法退出。continue语句的作用是跳过循环体中剩余的语句而强行执行下一次循环。continue语句只用在for、while、do-while等循环体中,常与if条件语句一起使用,用来加速循环。
(2.)C语言这个课程真的对于女生来说很难,很难把,需要个过程,求头发少掉一点。