c语言1作业07
这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/9932 |
我在这个课程的目标是 | 熟悉掌握switch语句的运用 |
这个作业在那个具体方面帮助我实现目标 | 学习switch语句的格式以及几种不同形式的运用 |
参考文献 | 《C语言程序设计》,百度 |
一.PTA实验作业
1.1 计算天数
题目内容描述:
要求编写程序计算某年某月某日是该年中的第几天。
输入格式:
输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。
输出格式:
在一行输出日期是该年中的第几天。
1.1.1数据处理
数据表达:使用变量全为整型,y,m,d分别表示年月日。
数据处理:先定义年月日的输入格式,再使用循环语句和switch语句求出天数,最后输出天数。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
2000/03/02 | 60 | pta样例 |
2001/07/06 | 187 | ![]() |
2002/12/05 | 339 | ![]() |
2003/06/03 | 154 | ![]() |
2004/08/28 | 241 | ![]() |
1.1.4 PTA提交列表及说明
答案错误:提交两次出现答案错误,此次主要出现了两个错误,一是for循环中我开始定义的i的值为0,而不是1。二是,if-else语句中循环体没有加上括号。经在devc++编译运行检测发现了错误并解决。
1.2 统计学生成绩
本题内容描述: 本题要求编写程序读入N个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则:
- 大于等于90分为A;
- 小于90且大于等于80为B;
- 小于80且大于等于70为C;
- 小于70且大于等于60为D;
- 小于60为E。
1.2.1 数据处理
数据表达:变量全为整型,ABCDE作为常规变量表示各等级数,i,N,s用于循环语句以及switch语句。
数据处理:初始定义各等级成绩数为0,再通过循环语句和switch语句求出各等级成绩的个数,最后进行输出。
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
7;77 54 92 73 60 65 69 | 1 0 2 3 1 | pta样例 |
5;52 76 80 92 97 | 2 1 1 0 1 | ![]() |
4;78 99 88 59 60 | 1 1 1 0 1 | ![]() |
6;20 45 58 77 82 94 | 1 1 1 0 3 | ![]() |
1.2.4 PTA提交列表及说明
编译错误:这个代码稍有复杂,其次我对switch语句的格式不太熟悉,出现了编译错误,仔细检查后解决了这个问题
多种错误:格式错误答案错误,多次尝试才发现ABCDE的定义为0的位置出现了错误,我将它放入了循环语句里,导致出现答案错误,然后就是输出格式弄错,定义其位置时我加了'&'符号。
二.代码互评
代码比较1:
我的代码 | 同学的代码 |
---|---|
![]() |
![]() |
代码分析:
- 对比起来我和同学的代码差异就比较大了,很明显他的比我多出不少,不过他的比我的更加好理解,我则是使用另外定义变量通过‘+=’直接计算出了天数之和。
代码比较2:
我的代码 | 同学的代码 |
---|---|
![]() |
![]() |
代码分析:
- 总体上两个代码是差不多的,风格类似,形式也差不多,不过我运用了default语句省下了不少代码的书写。
三.学习总结
3.1 学习进度条
日期 | 这周所花时间 | 代码行 | 学到的知识简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第一周(9.19-9.27) | 1小时左右 | 28 | c语言初步了解 | 格式的正确运用 |
第二周(9.27-10.4) | 2小时左右 | 20 | markdown格式的运用 | 怎么样让排版更加美观整齐 |
第三周(10.4-10.11) | 5小时左右 | 104 | if-else语句的运用 | 题目逻辑掌握不到位,分析问题的能力有待提高 |
第四周(10.11-10.18) | 5.5小时左右 | 92 | 循环语句的运用 | 循环体的编写以及结构的多种变化理解不透彻 |
第五周(10.18-10.25) | 8小时左右 | 90 | 调用函数的运用 | 还是很多时候循环体计算式不能写对 |
第六周(10.30-11.02) | 7小时左右 | 133 | 分支函数的运用 | 分支函数的多种形式理解不到位 |
第七周(11.4-11.8) | 5小时左右 | 105 | switch语句的运用 | switch语句的理解以及用法不到位 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
- 学习c语言所遇到的困难越来越大,其中的语句也越来越难理解。
- 作业完成的速度迟迟没有得到提升。
- 对c语言书中内容掌握不够。
- 不过学习的兴趣不减,希望自己继续加油。
c语言1作业07的更多相关文章
- C语言I作业07
问题 答案 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/9932 我在 ...
- | C语言I作业12
C语言I作业12-学期总结 标签:18软件 李煦亮 问题 答案 这个作业属于那个课程 C语言程序设计I 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/S ...
- C语言I作业12-学期总结
一.我学到的内容 二.我的收获 我完成的作业: 第一次作业 C语言I博客作业02 C语言I作业004 C语言I博客作业05 C语言I博客作业06 C语言I博客作业07 C语言I博客作业08 C语言I博 ...
- C语言I作业12一学期总结
一.我学到的内容 二.我的收获 作业 收获 C语言I博客作业01 学会了编程"Hello word" C语言I博客作业02 安装编译器,将代码建立在自己的文件里面 C语言I博客作业 ...
- 第二周c语言PTA作业留
6-1 计算两数的和与差(10 分) 本题要求实现一个计算输入的两数的和与差的简单函数. 函数接口定义: void sum_diff( float op1, float op2, float psum ...
- BMP图像直方图均衡算法(C语言大作业)
万丈高楼平地起 C语言大作业 一.学习笔记篇 1.学习MarkDown MarkDown注重写作本身,而非花俏的界面 编辑器:vscode 插件:Markdown,Markdown Preview 2 ...
- C语言1作业5
问题 答案 这个作业属于那个课程 C语言程序设计1 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-2 我在这个课程的目的是 学习并掌握C ...
- C语言I作业08
C语言I作业08 这个作业属于哪个课程 C语言程序设计ll 这个作业的要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/9981 ...
- | C语言I作业04
| C语言I作业004 标签: 18软件 李煦亮 问题 答案 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://www.cnblogs.com/pengchen511/p/ ...
随机推荐
- 对React性能优化的研究-----------------引用
JSX的背后 这个过程一般在前端会称为“转译”,但其实“汇编”将是一个更精确的术语. React开发人员敦促你在编写组件时使用一种称为JSX的语法,混合了HTML和JavaScript.但浏览器对JS ...
- node的安装和配置教程
node,除了做数据服务处理,还是各大框架的环境依赖,作为前端开发人员,node是必不可少的.好了,接下来直接开始. 一.根据自己的安装环境(即你的电脑系统版本)下载对应安装包,官网地址:https: ...
- 查看服务的cpu gpu各类内存 cpu频率等等信息
Linux版本cat /etc/redhat-releasecat /etc/lsb-release内核版本号cat /proc/version查看CPU信息(型号)cat /proc/cpuinfo ...
- python selenium 笔记
1.安装环境 下载python 3.6.4 第一页把最下面的环境变量勾上.第二页把 all user 勾上 直接安装到下一步 安装完成之后 cmd直接输入python 可以看到版本 2.安装 ...
- QT:QSS完全无效的原因
QSS的文件格式不是UTF-8,导致读取到的文件中字符串出现乱码.
- max函数结合lambda使用
说明:d.keys() 以及列表可以看做lambda函数的实参,max的判断对象是key的值.最终返回的是使得key的值最大的那个实参.
- Android_(传感器)获取手机中的传感器
传感器是一种检测装置,能够感受被测量的信息,并能将检测和感受到的信息按一定规律变换成电信号或其它所需形式的信息输出 Android操作系统中内置了很多的传感器(物理装置),能够探测.感受外界的信号.物 ...
- jquery 动态增加table行,动态删除table行
在html中我们大量的用到了局部刷新,局部刷新就是使用js来动态的修改html局部的数据.下面来介绍下使用jquery来动态的增加table的行,当然这种方式可以适用到任何的html组件中去. < ...
- kotlin 冷知识 *号 展开数组
Kotlin笔记-冷门知识点星号(*) 2019年05月10日 11:37:00 weixin_33724059 阅读数 6 可变参数展开操作符 在数组对象前加*号可以将数组展开,方便传值,比如: ...
- centos文件实时同步inotify+rsync
我的应用场景是重要文件备份 端口:873,备份端打开即可 下载地址:https://rsync.samba.org/ftp/rsync/src/ 服务端和客户端要保持版本一致 网盘链接:https:/ ...