C语言I博客作业05
这个作业属于哪个课程 | <C语言程序设计II> |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-1/homework/11489 |
我在这个课程的目标是 | 熟悉多分支结构、字符型数据类型和逻辑运算 |
这个作业在那个具体方面帮助我实现目标 | pta解题,同学代码互评 |
参考文献 | <c语言程序设计,C Primer Plus 第六版中> |
1.PTA实验作业
1.1 C程序设计 实验2-3-1
身高预测。
每个父母都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后的身高的因素包括遗传、饮食习惯与体育锻炼等。小孩成人后的身高与其父母的身高和
自身的性别密切相关。
设 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表示不好)等条件,利用给定公式和身高预测方法对身高进行预测。
输入格式:
在一行中给出性别、父亲身高、母亲身高、是否喜爱体育锻炼、是否有良好饮食习惯,数据间以空格分隔。
输出格式:
输出预测的身高,保留一位小数。
输入样例:
F 182 162 N Y
输出样例:
在这里给出相应的输出。例如:
167.5cm
1.1.1数据处理
数据表达: | 所用变量:double型:faheight,moheight,height,浮点型:sex,sports,diet;输入输出得. |
---|---|
数据处理: | 数据用到的表达式:height = (faheight * 0.923 + moheight) / 2,height = (faheight + moheight) * 0.54等 |
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
F 182 162 N Y | 167.5cm | 女性,不喜爱体育锻炼,有良好的卫生饮食习惯 |
F 188 167 y n | 173.7cm | 女性,喜爱体育锻炼,没有良好的卫生饮食习惯 |
m 173 168 y n | 187.8cm | 男性,喜爱体育锻炼,没有良好的卫生饮食习惯 |
M 167 156 Y y | 180.6cm | 男性,喜爱体育锻炼,有良好的卫生饮食习惯 |
1.1.4 PTA提交列表及说明
提交列表说明:
编译错误: | 少打了分号和小括号,分支结构中存在错误. |
---|---|
解决办法: | 多检查代码,可以复制代码去dev-c++里编译找出错误,注意输入法的符号问题. |
1.2 有多少位是7?
描述
从键盘读入一个4位数的整数,求该数中有多少位是7
输入格式:
一个4位数的整数
输出格式:
该整数中7的个数
输入样例:
在这里给出一组输入。例如:
4757
输出样例:
在这里给出相应的输出。例如:
2
1.2.1数据处理
数据表达: | 所用变量:int型:x,n;x为输入而来,n运算得. |
---|---|
数据处理: | (x/1000==7) {n+=1;}等 |
1.2.2实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
4757 | 2 | 2个7 |
7777 | 4 | 4个7 |
5703 | 1 | 1个7 |
7677 | 3 | 3个7 |
5831 | 0 | 没有7 |
1.2.4 PTA提交列表及说明
提交列表说明:
编译错误: | 第十行中我把%10打在了括号里面,第五行里的那个分号是中文输入法打的 |
---|---|
解决办法: | 我把代码复制在dev-c++里其实答案一直错误,我输入7777,而答案是3,通过百度和同学我解决了这个问题 |
2.代码互评
同学代码
自己代码
不同之处:
1.这2位同学都为千位,百位,十位,个位各定义了一个变量,这样会很清晰明了。
2.第二位同学用到了我们这周所学的else-if多分支语句,熟悉内容。
3.他们的代码中都在有些地方适当空格,结构完美。
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第八周10.19-10.25 | 3h | 251 | 初识c语言,打些简单的输入输出 | 对于定义的问题有时不清楚 |
第九周10.26-11.1 | 3.5h | 301 | 学到了if-eles,分支结构 | for循环中方程时常出错 |
第十周11.2-11.7 | 4h | 331 | 学到了for循环,循环结构 | 有些题目难以下手,基础知识不牢 |
第十一周11.8-11.15 | 4.5h | 322 | 学到了自定义函数 | 对于自定义函数不太熟练,比较生疏 |
第十二周11.16-11.22 | 4h | 350 | 学到了else if语句,字符型变量,简单的四则运算,&& | 四则运算 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
1.在这一周的学习中,我们学到了else-if多分支选择语句,简单的四则运算,一种数据类型——字符型(char),逻辑运算符——逻辑与(&&)、逻辑或(||)。
2.else-if我认为还是比较简单,但是四则运算我觉得挺难的,可能现在还不太熟悉吧,char,&&和||也都比较生疏,要多见面一下。就是因为这些问题,我在pta的第二题卡了很久很久。
3.提前预习还是很重要的,另外可以多看看同学的代码,进行比较,学习别人的优点。