这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/CST2020-1?page=2 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11530 |
这个作业的目标 | 学习分支结构、嵌入式if-else结构、符型数据类型和逻辑运算符 |
学号 | 20208942 |
这个作业在那个具体方面帮助我实现目标 | 看视频,翻书 |
参考文献 | 中国大学Mooch,c语言程序设计(第三版) |
1.PTA实验作业(20分/题)
请再此处列出自己的排名图片,如:
1.1 7-1 C程序设计 实验2-2-1 (20分)
用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.1数据处理
数据表达:用了变量score,其值是题目中规定的,类型是整数型。用了哪些变量,这些变量的值是怎么来的,类型是什么。
数据处理:数据用到了if-else语句数据用到的表达式和流程结构。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
100 | A | 测试成功 |
85 | B | 测试成功 |
70 | C | 测试成功 |
60 | D | 测试成功 |
30 | E | 测试成功 |
1.1.4 PTA提交列表及说明
。
提交列表说明:1.编译错误:误以为在char在定义变量时要打单引号,但打了单引号的大写字母就是数值;解决方法:把单引号去掉。
2.编译错误:以为score在在两边有限时可以直接打;解决方法:分开打限制条件并在中间加&&。
3.编译错误:输入的了%f,导致答案部分正确;解决方法:变成%lf即可。
1.2 7-2 C程序设计 实验2-3-1 (20分)
身高预测。
每个父母都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后的身高的因素包括遗传、饮食习惯与体育锻炼等。小孩成人后的身高与其父母的身高和自身的性别密切相关。
设 faHeight为父亲的身高,moHeight为母亲的身高,身高预测公式为: 男性成人时身高=( faHeight+moHeight)×0.54 女性成人时身高=( faHeight×0.923+ moHeight)/2cm 此外,如果喜爱体育锻炼,那么身高可增加2%;如果有良好的卫生饮食习惯,那么身高可增加1.5%。
试编程从键盘输入用户的性别(用字符型变量sex存储,输入字符F或f表示女性,输入字符M或m表示男性)、父母身高(用实型变量存储,faHeight为父亲的身高,moHeight为母亲的身高)、是否喜爱体育锻炼(用字符型变量 sports存储,输入字符Y或y表示喜爱,输入字符N或n表示不喜爱)、是否有良好的饮食习惯(用字符型变量diet存储,输入字符Y或y表示良好,输人字符N或n表示不好)等条件,利用给定公式和身高预测方法对身高进行预测。
1.2.1 数据处理
数据表达:变量sex,sports,diet,值是输入的,类型是字符型;
变量faHeight,moHeight,值是输入的,类型是浮点型;
变量baHeight,值是由计算得来,类型是浮点型。
数据处理:表达式1:baHeight=(faHeight0.923+moHeight)1.021.015/2; //女,运动,健康
表达式2:baHeight=(faHeight0.923+moHeight)1.02/2; //女,运动,不健康
表达式3:baHeight=(faHeight0.923+moHeight)1.015/2; //女,不运动但健康
表达式4:baHeight=(faHeight0.923+moHeight)/2; //女,不运动,不健康
表达式5:baHeight=(faHeight+moHeight)0.541.021.015; //男,运动,健康
表达式6:baHeight=(faHeight+moHeight)0.541.02; //男,运动,不健康
表达式7:baHeight=(faHeight+moHeight)0.541.015; //男,不运动,健康
表达式8:baHeight=(faHeight+moHeight)0.54; //男,不运动,不健康
流程结构:嵌入式if-else语句结构
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
F 182 162 Y Y | 170.8cm | 测试成功 |
F 182 162 Y N | 168.3cm | 测试成功 |
F 182 162 N Y | 167.5cm | 测试成功 |
F 182 162 N N | 165.0cm | 测试成功 |
M 182 162 Y Y | 192.3cm | 测试成功 |
M 182 162 Y N | 189.5cm | 测试成功 |
M 182 162 N Y | 188.5cm | 测试成功 |
M 182 162 N N | 185.8cm | 测试成功 |
1.2.4 PTA提交列表及说明
提交列表说明:1.编译错误:include<stdio.h>打成了include(stdio.h>;解决办法:改成include<stdio.h>即可。
2.编译错误:有一个sports少了一个s;解决办法:改成sports即可。
3.编译错误:有一个else打成了elses;解决办法:改成else即可。
4.答案错误:少了两种情况即女,不喜欢运动,饮食习惯良好 和男,不喜欢运动,饮食习惯良好;解决办法:在if(sports'Y'||sports'y')
{}else{}变成if(sports'Y'||sports'y'){}else if(diet=='Y'){}。
2.代码互评(5分)
同学代码截图
自己代码截图
1.第一份代码我觉得她的逻辑比我清楚,因为我把直接输出的ABCDE设成了变量,虽然答案对了,但逻辑不是完全正确。
2.同时我觉得她运用if-else语句更加熟练,对其理解的也比我更为深透。
3.在第二份代码中,第一位同学用的赋值的方式来解答这一道题使逻辑更为清晰明了,同时也看出了她对于if-else语句深刻理解。
4.第二份代码的第二位同学,让我感受颇深的是她的成熟,她好像已经不是为了完成作业,而是在面对使用者,让我看到了一个程序员的素养。罗列2份代码不同地方。
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
8/19-8/25 | 10 | 180 | C语言的发展史及特点,简单编程 | 无 |
9/26-9/1 | 12 | 300 | 用程序语言解决一些简单的数学运算 | scanf作为输入函数为什么要地址符,而printf函数不要 |
10/2-10/8 | 13 | 400 | 了解简单的循环结构 | 沙漏里的循环套循环怎么弄 |
11/10-11/15 | 12 | 350 | 自定义函数 | while循环 |
11/17-11/22 | 12 | 400 | 分支结构、符型数据类型和逻辑运算符 | 对分支结构还不能好运用 |
3.2 累积代码行和博客字数(5分)
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2 学习体会
我觉得大学的活动好多,尽管有很多我没有去参加,我依然觉得时间不够用,有时候想多花点时间在学习上,都有一种心有余而力不足的感觉,反而零碎的时间比较多,如何自律的有规划的整理利用自己零碎时间反而变成了我目前的一大难题。在学习上我,有时候在想我学的这些有什么用,比如这次作业的在一个四位数字中是7的有几位,在我们大脑中这可能就是一个视觉挑选,根本不需要动脑,可通过计算机我们就需要去用另一种思维去“算”给出有多少,而且这还很有限制只能算四位的。