C语言I博客作业05
(一)作业头
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/CST2020-4 |
---|---|
这个作业的目标是 | 熟练分支结构,字符型数据类型和逻辑运算符的用法 |
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-4/homework/11533 |
这个作业在那个具体方面帮助我实现目标 | pta上的题目以及格式要求很好的帮我熟练分支结构的用法 |
参考的文献 | 看书和b站,问同学 |
学号 | 20209047 |
1.PTA实验作业(20分/题)
(1)排名图片
(2)从PTA题目集中选出2个你最满意的题目完成以下内容,选择题目难度越大,分值越高,每题20分(每项5分),内容要求如下:
①题目名1:用if-else语句编程,根据输入的百分制成绩score(整数),转换成相应的五分制成绩grade后输出。
当 90≤ score≤100时, grade=A ;
当80≤ score<90时,grade=B;
当70≤ score<80时, grade=C;
当60≤ score<70时,grade=D;
当0≤ score<60时,grade=E。
如果输入成绩 score<0或 score>100,则输出“Input error!”。
1.1数据处理
数据表达:单精度浮点型score和字符型grade两个变量,这些变量的值都是依据题目给的数据得来的。
数据处理:表达式score<0||score>100、score>=90&&score<=100等
流程结构是if-else的分支结构
1.2实验代码截图
1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
91 | A | 测试score>=90&&score<=100 |
83 | B | 测试 score>=80&&score<90 |
920 | Input error | score<0 |
49 | E | score>=0&&score<60 |
1.4 PTA提交列表及说明
提交列表说明:
- 编译错误
错误点:字符未定义,将grade定义成了单精度浮点型,刚开始不知道字符需要定义是通过咨询别人知道的。
如何解决:看编译器显示的错误看了很久没看懂,也找不到明显错误,后来咨询同学,才知道字符是需要定义。 - 部分正确
错误点:if(score<0||score>100){ 这个表达式100后面忘记了一个括号。
如何解决:提交时编译器显示看出的。
②题目名2:从键盘读入一个4位数的整数,求该数中有多少位是7?输入格式:一个4位数的整数;输出格式:该整数中7的个数。
2.1数据处理
数据表达:i,n,digit1,digit2,digit3,digit4六个整形,变量通过自己题目需求得来的
数据处理:表达式:赋值表达式,算术表达式,条件表达式;
流程结构:分支结构
2.2实验代码截图
2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
4757 | 2 | 题目给出的测试值 |
5007 | 1 | 测试有7 |
1121 | 0 | 测试没7 |
2.4 PTA提交列表及说明
提交列表说明:
- 部分正确:
错误点:在这两个表达式digit2=(n/10)%10;digit3=(n/100)%10;中,我先取余数后取整数的。
解决方法:我后来尝试先取整数后取余数,很惊喜的答案居然对了,但还是觉得很奇怪为啥会这样
2.代码互评(5分)
-
A同学的代码
-
B同学的代码
-
我的代码
与A同学的不同点:A同学他的变量少,将公式直接写if 结构中,其实我并不太能理解他的做法。
与B同学的不同点:我和他的个十百千万位数方法不同,我还有一些多余的else可直接去掉的。
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第五周 | 35 | 400 | if-else语句以及字符运算 | 对于 if-else 还会出现语法错误,然后找不出 |
3.2 累积代码行和博客字数(5分)
3.3 学习内容总结和感悟(5分)
(1)学习内容总结
(2)学习体会
- 这周主要学到了if-else 分支结构,四则运算中的字符运算,听懂了但不是很会操作,要多去敲敲代码。
- 学习的比之前的更踏实了,刷题是有效果的!以后要去多刷题,讲完哪一知识点就去做哪一方面的题目。
- 希望在此次作业之后能够补上之前调用函数式的bug。
- 能自己解决的就不去问其他人,做到独立思考。