C语言I博客作业10

问题 答案
这个作业属于哪个课程 C语言程序设计II
这个作业要求在哪里 https://www.cnblogs.com/LiXue59/p/11936874.html
我在这个课程的目标是 复习循环语句嵌套,熟悉并灵活运用
这个作业在哪个具体方面帮助我实现目标 复习巩固学过的知识
参考文献 百度百科

1.PTA实验作业

1.1输出三角形字符阵列——本题要求编写程序,输出n行由大写字母A开始构成的三角形字符阵列。

1.1.1数据处理

  • 数据表达:

输入数据为i(列数),j(行数),n(每一行的数字),ch(字符'A'),q,输出为由大写字母A开始构成的三角形字符阵列;i,j,n,q均为整型数据,ch为字符型。

  • 数据处理:

1.1.2实验代码截图

1.1.3造测试数据

输入数据 输出数据 说明
4 测试是否与PTA所给数据一致
5 自己随机取定数据
6 自己随机取定数据

1.1.4PTA提交列表及说明

  • 1.答案错误:printf("\n");输出换行时斜杆符号打错了。
  • 2.答案错误:第一个for循环语句应该是要循环一次减一次,改了一下循环。
  • 3.答案错误:第二个for循环语句应该是for(j=1;j<=i+1;j++)我把”i“误打成了”n“。
  • 4.答案错误:第二个for循环语句应该是for(j=1;j<i+1;j++),不能”j“不能等于”i+1“。
  • 5.答案正确:改过来之后就对了。

1.2同构数——一个数恰好出现在它的平方数的右端,这个数就称为同构数。找出1~1000之间的全部同构数。

1.2.1数据处理

  • 数据表达:

输入数据为countt(同构数的位数),i(同构数),h(输入的数据),j,k,输出数据为i(同构数);它们均为整型数据。

  • 数据处理:

1.2.2实验代码截图

1.2.3造测试数据

输入数据 输出数据 说明
无测试数据 测试是否与PTA所给数据一致

1.2.4PTA提交列表及说明

  • 1.运行超时:第二个for循环体中忘记加上k=k*10;,导致没办法计算“i”的位数,if(i*i%k==i)语句中“k”误写成10。
  • 2.答案错误:第一次k=1的赋值语句不应该写在循环体内,我将它移出来,在进行第二次for循环的之前再次将”k“赋值为1。
  • 3.答案错误:最后一个if判断语句我写进了第二个for循环语句中,应该要提出来不能放在里面。
  • 4.答案错误:第一个循环语句中应该是i<=1000,我漏了一个等号。
  • 5.答案错误:第二个for语句循环中j应该从0开始加,而我是从1开始,所以代码应该为for(j=0;j<count;j++)
  • 6.答案错误:最后输出答案应该为printf("%d\n", i);,我少了“\n”。
  • 7.答案错误:我以为是我语句表达有错误所以将h=h/10;改为h/=10;k=k*10;改为k*=10;
  • 8.答案错误:怎么说呢,我做的是第四题但我却一直在第三题的PTA上面打导致一直答案错误,但是也真的是错误,因为搬回第四题我还是错了。(所以取截图PTA提交截图时我用的是7-3的,但我写的是7-4的代码哈哈哈)
  • 9.答案错误:在7-4这一部分的答案错误一直在纠结那个每个数占6列,后面发现只要把输出中添加一个6就可以了改为printf("%6d", i);
  • 10.答案错误:我一直以为”i“是可以取0的,仔细看了下题目,发现“i”不能取0,所以把第一个for循环语句中的i=0改为了i=1
  • 11.答案正确:改完6d就对了。

2.代码互评

同学代码截图

自己代码截图

  • 1.我是用两个for循环语句嵌套完成程序编写,而这位同学用了自定义函数分了两个函数,看起来比较简单。
  • 2.我是先确定输入数据的位数再进行是否为同构数的判断,而这位同学是先用一个自定义函数判断是否为同构数然后将函数带入主函数进行输出。
  • 3.相比起来,for语句嵌套循环会比较复杂,很容易搞混,而分为两个函数看起来简单明了而且很方便(但我觉得好难,我分不清)。

同学代码截图

自己代码截图

  • 1.这位同学是用设置自定义函数的方法来判断是否为梅森数,而我使用的是for语句循环嵌套。
  • 2.这位同学的自定义函数中判断输入数据是否为梅森数然后返回主调函数进行输出,而我是在排除无梅森数的情况下进行for语句循环输出梅森数。
  • 3.在判断是否为梅森数时,我是通过循环计算输入数据是否能被除1和自己本身整除来判断的,而这位同学计算稍微有点复杂比较难懂。

3.学习总结

3.1学习进度条

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第七周/9.3 两天左右 77 学习了if-else语句并练习,熟悉了常量变量,数据类型和流程结构 为什么有些空格可空可不空,有些空格又必须得空
第八周/10.17 两天 80 学习了for循环语句的使用,学习使用Dev-C++编译运行程序 不知道int main(void)中的void什么时候该加什么时候不该
第九周/10.23 两天多 141 自定义函数的使用,分析函数参数 当代码涉及到多个函数(包括自定义函数)的时候就会开始混乱分不清
第十周/10.31 两天半 215 分支结构和字符型的使用 如何灵活地运用分支结构完成编程
第十一周/11.6 两天多 200 学习了switch语句的使用 暂时没有
第十二周/11.12 三天 168 while循环语句的使用 不怎么会使用char(字符型);伪代码不太会使用
第十三周/11.19 三天 137 循环结构的嵌套 continue的使用
第十四周/11.26 两点半 116 复习循环语句的嵌套,了解期末考试内容 循环语句定义数据混乱

3.2累计代码行和博客字数

3.3学习内容总结和感悟

3.3.1学习内容总结

  • 复习循环语句嵌套

3.3.2学习体会

  • 这周课上主要复习了一下已经学过的循环语句,然后写了两道题的代码,因为是手写的还是很生疏,感觉没有电脑写那么熟悉,有一些固定的格式用手写也感觉好像不太会了记也记不清,看来临近期末现在要赶紧多练习在纸上写代码免得啥也记不得了。感觉循环语句还是好混乱,在定义变量的时候总是想不全要定义的数据,总是漏数据,或者忘记输入,太粗心了,而且数据太多我就容易记不住谁是谁,代码如果一长写到后面就完全混乱了,还是不够熟悉,快期末了,还是要把以前写过的代码多看几遍,看看书本的内容,将模糊的知识点弄懂吧,冲冲冲。

posted on 2019-11-28 21:30  LiXue59  阅读(293)  评论(0编辑  收藏  举报