C语言I博客作业10

这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/10097
我在这个课程的目标是 学会用正确的语法格式进行编程,锻炼能力,学好C语言
这个作业在那个具体方面帮助我实现目标 习题得练习,代码互评,思维导图的绘制
参考文献 百度,C语言程序与设计,C Prime Plus

1.PTA实验作业

1.1题目1: 输出三角形字符阵列

1.2数据处理

数据表达:用整型变量定义i,j,n,count,用字符型定义z;i,j分别代表行和列,count用来计数,首写字母A开始的表示方法为'A'+count;

数据处理:

伪代码:

  • beign
  • int i j n count
  • count←0 //定义初始值
  • char z
  • scanf("%d" &n)
  • for i←n i>0 //处理行与列的换行问题
  • for j←0 j>0
  • printf("%c " 'A'+count) //从字母A开始
  • count←count+1
  • printf("\n") //换行
  • end

1.3实验代码截图

1.3造测试数据

输入数据 输出数据 说明
4 A B C D E F G H I J 验证是否正确
2 A B C D 增加实验结果的可靠性
3 A B C D E F 增加实验结果的可靠性

1.4PTA提交列表及说明


Q1:显示编译错误,首字母未从A开始,printf语句后没有分号;
A1:再printf语句后加上分号,并用语句'A'+count表示从A字母开始;
Q2:又显示编译错误,printf写成了prinf;
A2:将printf改成prinf;

说明:做编程题要符合特定的语法规则,且要细心,多去思考问题的所在;

1.1.1题目2: 梅森数

1.1.2数据处理

数据表达:用整型变量定义i,j,n,x,count,其中n是整数所输入的数,i是为了求x,j是为了找梅森数,count用来计数还起标志作用,x%j==0语句判断是否为素数,该题用了pow函数,故要用# include<math.h>

数据处理:

伪代码:

  • begin
  • int i j n x count //定义变量
  • count←0 //定义初始值
  • scanf("%d" &n)
  • for i←2 to n
  • x←pow(2,i)-1 //求出数据
  • for j←2 to x
  • if(x%j←0) //判断是否为素数
  • break
  • if(j>x/2)
  • printf("%d\n" x)
  • count←count+1
  • if(count←0) //作为判断条件
  • printf("None")
  • end

1.1.3实验代码截图

1.1.4造测试数据

输入数据 输出数据 说明
6 3 7 31 验证是否正确
10 3 7 31 127 增加实验结果的可靠性
21 3 7 31 127 8191 131071 542287 大于20

1.1.5PTA提交列表及说明


Q1:显示部分正确,未按题目的要求列举梅森数,用了pow函数但没有用math.h头文件;
A1:使用math.h头文件,并按题意的要求进行输出;
Q2:显示答案错误,i和j的初始值为1;
A2:将i和j的初始值该为2;

说明:了解一定语法错误是有必须的,这样你就知道问题出现在哪里,同时要不断的进行练习

2.代码互评

同学代码:

我的代码:

互评结果:

  • 他的代码更加简便,并且不要用字符型常量来定义
  • 我的书写格式更加规范一些
  • 基本思路都是一至的,且都需要换行

同学代码:

我的代码:

互评结果:

  • 它定义的变量过于复杂,不易操作
  • 他还调用了函数显得更加高人一等,难以读懂
  • 我的书写格式更加规范一些

3.学习总结

3.1 学习进度条

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较疑惑的问题
第一周 2小时 30行 如何空格,控制字符 编译的格式
第二周 2.5小时 40行 求华氏温度 printf的使用方法
第三周 4.5小时 80行 分段函数的编写 if-else不能灵活使用
第四周 2天 90行 循环语句for的使用 不会正确的变形,理不清题意
第五周 2天 200行 水仙花数的表示方法;个位数字平方和的表示方法 对陌生的概念不太了解,难以正确编程
第六周 2天 260行 if与else语句与for语句的综合使用,逻辑运算符,字符型char 题意与如何构思能力还有待提高
第七周 2天 220行 switch语句的使用,以及一些常见的格式 不能正确的编程,如何解决问题的能力还有待提高
第八周 2天 230行 如何用do-while语句和while语句,并区分与for语句的不同地方 题意还是不能完全读懂,难以正确的编程
第九周 3天 280行 如何使用for语句的循环嵌套结构,并学了break与coutinue之间的区别 题意还是不能完全读懂,题意与如何构思能力还有待提高
第十周 3天 300行 if-else,coutinue,break,for循环嵌套的综合应用 难以编程出与题意相符的代码,如何解决问题的能力还有待提高
3.2 累积代码行和博客字数

思维导图:

内容总结:

  • 明白一些常见的错误类型,如答案错误表示与题意输出的内容不符或输出的结果不同,编译错误常见的问题是标点符号不打或打错,运行超时的常见问题是输入了不要输入的内容,多种错误常见的问题是多定义了一些没有用到的变量,且再编程上还出现了语法错误;
  • 学会如何用整型,浮点型,字符型定义变量,并学会用从字符A开始的语句,运用for语句的循环嵌套结构解题;
  • 在输出格式控制说明中,可以加宽度限定词,指定数据的输出宽度,如%md;

感悟:

  • C语言是一门语言,要想学好学会就要多加练习,要从本质上分析问题并解决问题
  • 学习过程中会遇到一些难题,这时就离不开老师与同学的帮助,多问还是有必要的
  • 做题过程中会遇到许多未学过的知识,这就需要我们多看课外书并预习课本上还没教的知识

3.4学习体会

  • C语言中如何正确使用for语句的循环嵌套结构和coutinue,break的综合应用,对于初学的我只能不断搜集资料;
  • 有时我甚至连题意都没有弄懂,在同学的帮助下我还是明白了许多;
  • 在这门功课上,我们需花大量的时间来练习并巩固已学知识;
  • 同时我也希望老师在上课的时候多讲几个习题助于我们理解;
  • 当然我也会去图书馆去阅读一些相关资料来提升自己;
原文地址:https://www.cnblogs.com/hunanloudi/p/11952803.html