C语言I博客作业05
这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-2/homework/11531 |
我在这个课程的目标是 | 复习并巩固分支结构以及if else语句,熟悉字符型定义 |
这个作业在那个具体方面帮助我实现目标 | pta中的固定习题与自选习题 |
参考文献 | b站视频与C primer plus |
1.PTA实验作业(20分/题)
1.1 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.1.1数据处理
数据表达:本题定义了sex, sports, diet;字符型变量以及faheight, moheight, myheight;双精度浮点型变量。
数据处理:对faheight, moheight, myheight,sex做格式化输入,利用myheight = (faheight + moheight) * 0.54等表达式,用if else 分支语句逐个判断条件最后输出结果。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
F 182 162 N Y | 167.5cm | 女性 父母身高分别为182,162,不喜欢锻炼,有良好的饮食习惯 |
M 182 162 Y N | 189.5cm | 男性 父母身高分别为182,162,喜欢锻炼,没有良好的饮食习惯 |
1.1.4 PTA提交列表及说明
提交列表说明:
部分正确:一开始只能识别男女性大写字母,无法识别小写字母
处理方法:在每个if后的括号内的语句中利用“||”判断小写字母
1.2 7-3 有多少位是7? (40分)
从键盘读入一个4位数的整数,求该数中有多少位是7
1.2.1 数据处理
数据表达:定义了n与count整型变量,count赋值等于0
数据处理:对n做格式化输入,用for循环语句,对n除以10后得到的整数部分除以10以后的余数若等于7则count加1
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
4757 | 2 | 四位数中含两个7 |
9761 | 1 | 四位数中含一个7 |
1.2.4 PTA提交列表及说明
提交列表说明:
部分正确:之前输入的函数中有很多位上的数没有除以10,if用的太多,代码太复杂.
解决方案:改写代码,利用余数来判断位数上是否为7.
2.代码互评(5分)
同学代码1:
本人代码:
- 不同点:1.他定义了6个整型变量,并将其中4个变量做为数的每个位数,我只定义了两个变量。
2.他只利用了if语句来判断,我用了for循环语句和if语句让我的代码更加简洁。
3.他用if语句依次判断每个位数是否为7,我用if语句来判断n除以10后的整数除以10的余数是否为7来间接判断。
同学代码2:
本人代码:
- 不同点:1.她只运用了if语句,我利用了if和for语句。
2.她定义的变量与我不同,流程结构也比我要长
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 这周所花时间 | 代码行 | 学到的知识点简介 | 目前比较疑惑的问题 |
---|---|---|---|---|
第一周/11.2-11.8 | 20h | 420 | 学习了for循环结构 | 无 |
第二周/11.9-11.15 | 21h | 480 | 学习了自定义函数的调用 | 无 |
第三周/11.16-11.22 | 21h | 540 | 学习了if else分支结构,字符型定义 | if else中大括号的位置与字符类的定义 |
3.2 累积代码行和博客字数(5分)
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
本周学习了怎样打出乘方表并且了解了各种运算符的运用,巩固了自定义函数的调用,学习了if else分支结构以及字符型定义。
3.3.2 学习体会
- 在学习时,会遇到一些困难,不要放弃不要气馁,可以先把难的题目放放,等过段时间再去看,也许就会有灵光一现的时候
- 学习时不要轻易烦躁,适度调节心情能够更好的帮助学习。