c语言1博客作业05
1.作业头
这个作业属于哪个课程 | c语言程序设计Ⅱ |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-3/homework/11454 |
我在这个课程的目标是 | 多次运用else——if语句,真正理解并掌握else-if语句的真谛,同时学会使用不同的方法去解决疑难问题 |
这个作业在那个具体方面帮助我实现目标 | 让我更好的掌握了字符数据类型与逻辑运算符的运用 |
参考文献 | c语言程序设计 |
学号 | 20209045 |
一,PTA实验作业(20分/题)
排名图片
从PTA题目集中选出2个你最满意的题目完成以下内容,选择题目难度越大,分值越高,每题20分(每项5分)内容要求如下:
1.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.11数据处理
数据表达:在处理数据时要使用逻辑或/非。不能采用70≤ score<80这种形式。
数据处理:应这样表达(70<=score&&score<80)逻辑或|| 逻辑非&&
流程结构是if-else的分支结构
1.2实验代码截图
1.3 造测试数据
.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
86 | B | 测试 score>=80&&score<90 |
38 | E | 测试0≤ score<60 |
99 | A | 测试score>=90&&score<=100 |
120 | Input error | 测试 score<0或 score>100 |
1.4 PTA提交列表及说明
提交列表说明:
部分正确
错误点:看题目出现问题,该题解释的输出为ABCD,我打成了printf(grade=A,B,C,D).同时没有采用逻辑或和逻辑非。
如何解决:将70≤ score<80改成70<=score&&score<80,将printf(grade=A,B,C,D)改成grintf=A,B,C,D。
1.2从键盘读入一个4位数的整数,求该数中有多少位是7?输入格式:一个4位数的整数;输出格式:该整数中7的个数。
2.1数据处理
数据表达:i,n,digit1,digit2,digit3,digit4六个整形,
数据处理:表达式:赋值表达式,算术表达式,条件表达式;
流程结构:分支结构
2.2实验代码截图
2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
4776 | 2 | 该数据中存在俩个7 |
3478 | 1 | 该数据中存在一个7 |
1243 | 0 | 该数据中不存在7 |
2.4 PTA提交列表及说明
提交列表说明:
答案正确:
编译错误:在最后结尾处return 0处忘记打分号
解决方法:在return 0处加上分号。
2.代码互评(5分)
A同学的代码
B同学的代码
我的代码
与A同学的不同点:A同学他的语句运用少变量也少,只是单纯的将公式直接写if 结构中。我的采用了整型函数,且采用了digit,至于这个我也不是很懂只能这样解释
与B同学的不同点:他的个十百千万位数方法与我不一样,我的是采用if-else的格式来写的,感觉更简单。
3.学习总结(15分)
3.1 学习进度条(5分)
3.2累积代码行和博客字数
3.3 学习内容总结和感悟
学习总结和感悟:1.已经学习C语言第五周了 我感觉自己还是有很多不懂的地方,
花了很长时间才将作业完成,经过这周的学习,对else-if语句以及if-else语
句了解很深,感觉基本能做到错一次就做对了,学到东西心情是愉悦的。我会继
续努力,争取学到更多与计算机涉及的知识。