C语言I博客作业05
| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/SE2020-1 |
|---|---|
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-1/homework/11526 |
| 这个作业的目标 | 分支结构 3.1-3.2 使学生熟悉多分支结构、字符型数据类型和逻辑运算符。认真记录自己本周的学习情况 |
| 学号 | 20209097 |
| 这个作业属于那个课程 | C语言程序设计II |
|---|---|
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-1/homework/11489 |
| 我在这个课程的目标是 | 熟悉多分支结构、字符型数据类型和逻辑运算符 |
| 这个作业在那个具体方面帮助我实现目标 | 熟悉多支结构,认识自己的不足,反思自己 |
| 参考文献 | C Primer Plus 和C语言程序设计 |
1.PTA实验作业
1.1 题目名1
体质指数( BMI)是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。BMI的计算方法如下: 体质指数(BMI) = 体重(kg)/ 身高( m )的平方。
1.1.1数据处理
数据表达:运用了浮点型 ,变量为a,b,c,a和b需要赋值,c为a,b所得。
数据处理:算术表达式,赋值表达式,if..else..语句,分支语句。
1.1.2实验代码截图

1.1.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 62 1.71 | 正常 | 符合题目要求 |
| 60 1.70 | 偏胖 | 体重60kg,身高1.50,身体偏胖 |
| 70 1.50 | 肥胖 | 体重70kg,身高1.50,身体肥胖 |
| 50 1.70 | 偏瘦 | 体重50kg,身高1.70,身体偏瘦 |
| ... | ... | ... |
编程正确
1.1.4 PTA提交列表及说明

7.4两次部分正确。
原因:读题不明确,算术表达式错误,第一次写为c=b/pow(a,2),第二次为c=pow(b/a,2)。
1.2 题目2
身高预测。每个父母都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后的身高的因素包括遗传、饮食习惯与体育锻炼等。小孩成人后的身高与其父母的身高和自身的别密切相关。设 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 数据处理
数据表达:运用了float和char,浮点型变量为 faHeight,moHeight,x,字符型为sex,sports,diet,其中faHeight,moHeight为赋值所得,x为运算所得。
数据处理:逻辑运算符,算术表达式,赋值表达式,if...else..语句,分支结构和顺序结构
1.2.2 实验代码截图

1.2.3 造测试数据
| 输出数据 | 输入数据 | 说明 |
|---|---|---|
| F 182 162 N Y | 167.5cm | 符合题目要求 |
| f 182 162 n y | 167.5cm | 逻辑运算符真确符合题目要求 |
| M 182 162 N Y | 188.5cm | 男性 父亲身高182 母亲身高162 不喜欢运动 有健康饮食的身高 |
| m 182 162 n y | 188.5cm | 逻辑运算符正确 |
| ... | ... | ... |
编程正确
1.2.4 PTA提交列表及说明

答案错误:运算错误 将F与M的算术表达式弄错
答案错误:for...else...语句弄错,造成答案不停为0
答案错误:依旧是for语句错误,对for语句不熟,开始求助学长,查询资料。
2.代码互评
曹锦荣的代码

曾渊熙的代码

我的代码

1:我与曹的代码有很多相似的地方,可能是源于查询了相同的资料,他有很多次失败的经历,而我才几次,我不如他,但我有些地方是可以简化的,如||处逻辑符优先级低。
2:曾的和我还有曹的都不同,运用里多个变量,他比我们更熟悉if语句的用法。多个变量不代表复杂,相比之下,曾的代码很简便。
3.学习总结
3.1 学习进度条
| 周/日期 | 这周所花的时间 | 代码行 | 所学的知识点简介 | 目前比较迷惑的问题 |
|---|---|---|---|---|
| 第八周/10.19~10.25 | 10小时 | 100 | 开始了解了软件工程,学会了使用基本的c语言和markdown语法。 | 刚刚接触有很多的迷惑,只会机械的模仿 |
| 第九周/10.26~11.1 | 12小时 | 250 | 常量,变量,表达式,赋值等,数据表达与流程控制 | 只知道机械编码,没弄懂语句,语言的意义 |
| 第十周/11.2~11.8 | 14小时 | 370 | 开始细学流程控制和数据表达,学了判断,for语句 | 深入了解了,更对函数,表达式等意义的模糊 |
| 第十一周/11.9~11.15 | 16小时 | 450 | 函数的参数的使用 | 多重参数的更变很复杂,对于参数不是很了解,仅仅用于使用 |
| 第十二周/11.16~11.22 | 20小时 | 600 | 分支结构,字符型char,逻辑运算符 | 对于一些与越来越深的学习出现了很多问题,很多地方开始出现矛盾,int,double,%d,%lf,%f之间的差别与冲突 |
3.2 累积代码行和博客字数



浙公网安备 33010602011771号