C语言I博客作业07
| 问题 | 答案 |
|---|---|
| 这个作业属于那个课程 | C语言程序设计II |
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/9932 |
| 我在这个课程的目标是 | 对C语言有一个深刻的了解,让自己对代码有个抽象的理解,了解各种语句 |
| 这个作业在那个具体方面帮助我实现目标 | 初步了解了switch语句,初步应用switch语句解决问题 |
| 参考文献 | 无 |
1.PTA实验作业(20分/题)

1.1题目名
本题要求编写程序读入N个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则:
大于等于90分为A;
小于90且大于等于80为B;
小于80且大于等于70为C;
小于70且大于等于60为D;
小于60为E。
1.1.1数据处理
数据表达:运用int(整型)。用的变量为m=m/10,用于减少switch语句中的case。
数据处理:运用switch语句,for循环语句。
1.1.2实验代码截图

1.1.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| n=5,m=100 90 80 70 60 | 2 1 1 1 0 | m有等于100的 |
| n=5,m=60 40 30 20 0 | 0 0 0 1 4 | m有等于0的 |
1.1.4 PTA提交列表及说明

提交列表说明:
思路清晰,老师上课也提过这种问题的解决方法,在dev上输出了正确答案,就在pta上打了。
1.2 题目名
给定 N 个正整数,要求你从中得到下列三种计算结果:
A1 = 能被 3 整除的最大整数
A2 = 存在整数 K 使之可以表示为 3K+1 的整数的个数
A3 = 存在整数 K 使之可以表示为 3K+2 的所有整数的平均值(精确到小数点后 1 位)
1.2.1数据处理
数据表达:运用int(整型),double(双浮点型)定义变量。用的变量为c=m%3,根据题目意思判断m除以3的余数;s=v/d,用来计算平均值。
数据处理:运用了switch语句,for循环,和if-else的嵌套。
1.2.2实验代码截图



1.2.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| n=4,m=2 5 8 9 | 9 NOEN 5.0 | 没有能被3整除的整数 |
| n=4,m=2 6 8 11 | 6 NONE 7.0 | 不存在整数K使之可以表示为3K+1的整数 |
| n=4,m=1 3 4 7 | 3 3 NONE NONE | 不存在整数K使之可以表示为3K+2的整数 |
1.2.4 PTA提交列表及说明

提交列表说明:
多种错误:平均数应该是浮点型,而我int了他,而且%d了他,还有个答案错误。
答案错误:没有考虑到没有符合的数时输出NONE。
2.代码互评(5分)
同学代码截图
①

自己代码截图

①第一位同学比较啰嗦了,因为60分以下,都时E,可以把case5 4 3 2 1 0都去掉。
②我的代码比较的简化了一点,思路较为清晰,而且用到了switch的语句。
3.学习总结(15分)
3.1 学习进度条(5分)
| 周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
|---|---|---|---|---|
| 第一周(9.19-9.27) | 2天 | 24 | 代码的最基本输出 | 要怎么进行输入 |
| 第二周(9.25-10.4) | 2天 | 20 | 华氏温度转换和GCC编译器编译的方法 | 怎么样才能打出一个我们能输入一个温度就能把它转化为摄氏度的代码 |
| 第三周(10.8-10.11) | 2天 | 90 | 函数的输入输出 | 各种数学的符号和运算要怎么在代码上表示出来 |
| 第四周(10.11-10.17) | 2天 | 84 | 循环语句的应用 | 无 |
| 第五周(10.19-10.26) | 2天 | 78 | 函数的定义和调用 | 无 |
| 第六周(10.27-11.2) | 2天 | 125 | if-else的嵌入,和逻辑符号的应用 | 感觉有点问题,但具体不知道是哪里。。。 |
| 第七周(11.3-11.8) | 2天 | 129 | switch语句和应用 | 不清楚switch的意义,有点被查询价格的题搞糊涂了,以为只能用来解决那种类型的问题 |
3.2 累积代码行和博客字数(5分)

3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结

3.3.2 学习体会
①有时候真的if-else比switch好用多了。
②知道要怎么写,但是要用switch的话有的要转好多个弯,可以看我的pta最后一题,整整打了六十多行。
③看清并理解题目还是很重要的,比如说那个:A1=存在整数 K 使之可以表示为 3K+1 的整数的个数,我一开始没看懂以为是k=(m-1)/3,后来理解了是除以三的余数为1.

浙公网安备 33010602011771号