你永远不会独行

C语言I博客作业05

这个作业属于哪个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-4/homework/11533
我在这个课程的目标是 继续巩固if else语句的使用及对自定义函数的熟悉
这个作业在那个具体方面帮助我实现目标 逻辑思维,函数定义
参考文献 C语言程序与设计,PTA,百度

1 PTA实验作业

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.1.1 数据处理

  • 数据表达:使用了score,grade两个变量,其中score为整形,grade为字符型
  • 数据处理:score<0||score>100等 printf("Input error!")等

1.1.2 实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
85 B 85介于80与90之间,故输出为B
125 Input error! 125大于100,故输出错误
-2 Input error! -2小于0,故输出错误
74 C 74介于70与80之间,故输出为C
55 E 55介于60与0之间,故输出为E

1.1.4 PTA提交列表及说明

初始


修改

提交列表说明

  • 错误:第一次代码我没有使用或这一逻辑关系词,而是单纯得按照数学逻辑表达;第二次代码则是粗心的将grade写成了score
  • 解决:将90>score>=80改成score>=80&&score<90;将printf后的score全部改成grade

1.2 7-3 身高预测

每个父母都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后的身高的因素包括遗传、饮食习惯与体育锻炼等。小孩成人后的身高与其父母的身高和自身的性别密切相关。

设 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数据处理

  • 数据表达:使用了faHeight,moHeight,yourHeight,sex,S,D六个变量,其中前三个变量为单精度浮点型,后三项为字符型
  • 数据处理:if (sex'M'||sex'm') yourHeight=(faHeight+moHeight)0.54;else yourHeight=(faHeight0.923+moHeight)/2;等

1.2.2实验代码截图

1.2.3造测试数据

输入数据 输出数据 说明
F 182 162 N Y 167.5cm 系统给定数据
M 182 162 N Y 188.5cm 在其他数据相同情况下的男性身高
F 170 165 Y Y 166.7cm 改变运动状态下的身高数值
F 170 165 N N 161.0cm 改变生活习惯下的身高数值

1.2.4PTA提交列表及说明




提交列表说明

  • 第一段代码在scanf之中变量的顺序没有按照题目中的来;第二段代码发生了段错误,float对应了lf导致错误。
  • 改变顺序,&sex起头;一一对应,将lf改为f。

2 代码互评

  • 同学代码截图</font


  • 自己代码截图

  • 比较
    我的代码使用了上课所学的if else语句并简化了过程,没有表达出N,n
    同学一的代码在定义变量上更加简单,且使用了else if的语句
    同学二的代码使用了自定义函数,与所学内容更加契合

3.学习总结

3.1学习进度条

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
10/12——10/18 15h 218 大致了解了c语言,运用C语言编写最基本的程序 不太了解头文件是什么
10/19——10/23 17h 260 了解断点的相关操作,并掌握此方法来检查代码 有时候会出现无法进入逐一调试功能
10/24——11/7 50h 400 学会运用for的循环结构,进一步了解各种字符 还并不能熟练运用for循环结构
11/8——11/14 18h 365 了解了函数的定义,以及进一步熟悉了各种函数
11/15——11/23 24h 380 继续巩固了函数的定义以及if——else语句,学习了逻辑关系词的运用 有时候还不能很好的将题目某些条件用逻辑词很好的转化为代码

3.2累计代码行和博客字数

时间 博客字数 代码行数
第一周 210 101
第二周 565 285
第三周 985 365
第四章 1235 452
第五周 1125 398
3.3学习内容总结与概括
3.3.1学习内容总结
3.3.2学习体会
本周学习
  • 学习了逻辑关系词,如和&&,或||等。
  • 大致来接了else——if语句,加强了对函数定义的认知。
  • 继续了断点练习。
    感悟
  • c语言学到这个阶段,我觉得更多的是自主学习,而不是单单的从课堂中学到新知识。
  • pta中有些题目我无法将其用逻辑关系转化为代码,所以我亟需进行这方面的练习。
  • 代码需要多打,不能简单看着书本,重在实践。
posted @ 2020-11-23 16:50  mane  阅读(139)  评论(6编辑  收藏  举报