C语言I博客作业07

问题 答案
这个作业属于哪个课程 c语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/9933
我在这个课程的目标是 熟练使用C语言
这个作业在那个具体方面帮助我实现目标 pta习题
参考文献

1.PTA实验作业

1.1本题要求编写程序读入N个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则:

1.1.1数据处理

*数据表达:x[],N,i,a,b,c,d,e;八个变量全为整型;分别为每个学生的成绩,学生人数,数组下标,各个等级的人数A-E。
*结构有选择结构和循环结构。

1.1.2数据截图


1.1.3数据测试

输入数据 输出数据 说明
7 77 54 92 73 60 65 69 1 0 2 3 1 题目要求
0 0 0 0 0 0
3 100 100 100 3 0 0 0 0 全部满分

1.1.4提交列表及说明

  • 部分正确1:第一次在dev上完成时,用了不太熟练的数组来定义变量,将数组定义为x[N],在其上运行完毕后在PTA上显示部分正确,于是返回dev进行多组数据测试,发现当输入五人及以上时,成绩无法输入两位数,否则程序将直接结束
    如图:
    四人可运行成功

    五人及以上无法运行

    五人及以上成绩全部为一位数时可以运行。
    我怀疑是和变量占用的内存有关的问题,在查阅相关资料无果后,我选择向学长求助,他提示我将x[i]改为x[5],我意识到可能与开辟的内存有关,改完之后dev上可以运行5个人数的结果了,但是6以上又无法运行,于是我将x[5]又改为了x[100]。
  • 部分正确2:改成x[100]提交后,还是显示部分正确,只是正确的答案多了一个,我知道肯定是因为PTA测试的范围不只100,将其改为1000后答案正确。

1.2给定 N 个正整数,要求你从中得到下列三种计算结果:

A1 = 能被 3 整除的最大整数
A2 = 存在整数 K 使之可以表示为 3K+1 的整数的个数
A3 = 存在整数 K 使之可以表示为 3K+2 的所有整数的平均值(精确到小数点后 1 位)

1.2.1数据处理

  • 数据表达:x,i,b,f,t,tt,ttt,c,cc,ccc十个变量其中tt,ttt为双精度浮点型,其余为整型,分别为变量个数,进行循环计算的次数,整数,接受最大值的变量,A2的值,A3的总值,符合A3的个数,A1是否存在的标志,A2是否存在的标志,A3是否存在的标志。
  • 运用了选择结构,循环结构。

1.2.2实验代码截图



1.2.3数据测试

输入数据 输出数据 说明
8 5 8 7 6 9 1 3 10 9 3 6.5 题目要求
5 1 1 1 1 1 NONE 5 NONE A1,A3没有
5 0 0 0 0 0 0 NONE NONE A2,A3没有
5 5 5 5 5 5 NONE NONE 5.0 A1,A2没有

1.2.4 提交列表及说明

  • 答案错误:判断A1时使用了整除而不是取余。
  • 部分正确:未给c,cc,ccc三个标志赋初始值。

2.代码互评

  • 同学(万仕康)的代码
  • 我的代码

  • 没有弄清楚老师的要求,以为必须全部使用switch case语句,很明显在某些选择条件时if-else更加简洁明了,例如范围条件,多种条件并列和或,而switch在面对式子或者变量的多种结果时更加好用,两者各有适用的范围。

3.学习总结

3.1学习阶段

| 周/日期 | 这周所花的时间 | 代码行 | 学到的知识简介 | 目前比较迷惑的问题 |
| - | - | - |
| 10/7-10/14 | 7个小时 | 130 | 选择结构的使用,变量类型的区别及使用 | 为啥老师要让我们看看不懂的代码 |
| 10/15-10月17 | 6小时 | 75 | dev c++的调试,各种运算符的起源及优先级,for循环语句的使用 | <=符号的类别及优先级;前++和后++的区别 |
| 10/18-10月26日 | 12小时 | 90 | 自定义函数的声明和调用 | for循环和while循环各自的利弊 |
| 10月27-11月1日 | 8小时 | 150 | ascll码的作用,switch case简单用法, 数组元素的简单使用,字符的输出与输入 |
| 11月2-11月8日 | 9小时 | 117 | 数组元素的进一步了解 |

3.2累计代码行的博客字数

3.3学习内容总结和感悟

3.3.1学习内容总结

*思维导图

3.3.2 学习体会

  • 这周忙着学英语线性代数去了,到了写博客园总结的时候才发现c语言几乎被搁置了,较上周并无明显提升,也没有学习到比较新的内容,看来每周的学习总结还是非常有必要的,下周要调整学习计划,多花费一些时间在c语言上。
posted @ 2019-11-08 14:30  ‘panzer  阅读(347)  评论(0编辑  收藏  举报