第10练 单元3 身高体型判定系统实现(BMI计算、单位转换、输入合法性检查)《C语言程序设计》(高教版第2版)一课一练

2026-04-28
| 2份
| 8页
| 18人阅读
| 0人下载

资源信息

学段 中职
学科 职教专业课
课程 C语言程序设计
教材版本 -
年级 -
章节 -
类型 作业-同步练
知识点 分支结构
使用场景 同步教学
学年 2026-2027
地区(省份) 全国
地区(市) -
地区(区县) -
文件格式 ZIP
文件大小 132 KB
发布时间 2026-04-28
更新时间 2026-04-28
作者 爱学习的muller
品牌系列 上好课·一课一练
审核时间 2026-04-28
下载链接 https://m.zxxk.com/soft/57585221.html
价格 1.00储值(1储值=1元)
来源 学科网

内容正文:

编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《C语言程序设计》(高教版第2版)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。 本卷是《C语言程序设计》(高教版第2版)一课一练的单元3的第10练,内容涵盖单元3“身高体型判定系统”的数据处理3.5 身高体型判定系统实现(BMI计算、单位转换、输入合法性检查)。 《C语言程序设计》(高教版第2版)一课一练 第10练 单元3 “身高体型判定系统”的数据处理 3.5身高体型判定系统实现(BMI计算、单位转换、输入合法性检查) 1、 单项选择题(本题共5小题) 1、已知子女成年身高预测公式:男孩身高 =(父身高 + 母身高 + 13)/2,女孩身高 =(父身高 + 母身高 - 13)/2,下列 C 语言代码实现男孩身高计算正确的是( ) A. boy_height = father + mother +13 / 2; B. boy_height = (father + mother +13) / 2.0; C. boy_height = (father + mother) +13 / 2; D. boy_height = (father + mother +13) % 2; 2、体型判定系统中,BMI 指数计算公式为BMI=体重(kg)/(身高(m)×身高(m)),若身高输入单位为厘米,需先转换为米,下列转换代码正确的是( ) A. double height_m = height_cm / 100; B. int height_m = height_cm % 100; C. double height_m = height_cm * 100; D. float height_m = height_cm + 100; 3、在体型判定中,需根据 BMI 值判断体型(如 BMI<18.5 为偏瘦,18.5≤BMI<24 为正常),下列条件判断语句正确的是( ) A. if(bmi < 18.5) printf("偏瘦"); else if(bmi <24) printf("正常"); B. if(bmi < 24) printf("正常"); else if(bmi <18.5) printf("偏瘦"); C. switch(bmi) { case <18.5: printf("偏瘦"); break; } D. if(bmi <=18.5) printf("偏瘦"); else printf("正常"); 4、开发身高预测系统时,输入父母身高适合使用的数据类型是( ) A. char B. int C. double D. short 5、下列关于身高预测与体型判定系统的描述,错误的是( ) A. 需使用scanf获取用户输入的身高、体重等数据 B. 体型判定需用到逻辑运算符组合条件 C. 身高预测公式中的加减 13 是固定的经验值 D. 所有计算都必须使用整数类型保证结果准确 2、 判断题(本题共4题) 1、在身高预测系统中,判断用户输入的性别为男孩时,可使用条件if(sex == '男'),其中sex需定义为char类型。( ) 2、体型判定中,若身高输入为 175 厘米,直接代入 BMI 公式bmi = weight/175*175即可得到正确结果。( ) 3、身高预测系统中,使用printf("预测身高:%.1fcm ", height);可以保留 1 位小数输出预测结果。( ) 4、在体型判定的多分支结构中,else语句必须和if语句配对使用,不能单独存在。( ) 3、 程序填空题(本题共1题) 1、题目描述:以下程序实现身高预测 + 体型判定的综合功能,用户输入父母身高、自身性别、当前身高体重,先预测成年身高,再判定当前体型,需补充缺失代码; (1) // 引入标准输入输出头文件 int main() { double father_h, mother_h, predict_h, self_h, weight, bmi; char sex; printf("请输入父亲身高(cm)、母亲身高(cm):"); scanf("%lf %lf", &father_h, &mother_h); printf("请输入你的性别(男/女):"); scanf(" %c", &sex); // 预测成年身高 if(sex == '男'){ predict_h = (2) ; } else if(sex == '女'){ predict_h = (father_h + mother_h -13)/2.0; } printf("你的成年预测身高为:%.1fcm ", predict_h); printf("请输入你的当前身高(cm)、体重(kg):"); scanf("%lf %lf", &self_h, &weight); // 计算BMI指数 (3) ; // 判定体型 printf("你的当前体型:"); if(bmi < 18.5){ printf("偏瘦 "); } else if((4) ){ printf("正常 "); } else if(bmi <28){ printf("超重 "); } else { printf("肥胖 "); } return 0; } 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $ 编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《C语言程序设计》(高教版第2版)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。 本卷是《C语言程序设计》(高教版第2版)一课一练的单元3的第10练,内容涵盖单元3“身高体型判定系统”的数据处理3.5 身高体型判定系统实现(BMI计算、单位转换、输入合法性检查)。 《C语言程序设计》(高教版第2版)一课一练 第10练 单元3 “身高体型判定系统”的数据处理 3.5身高体型判定系统实现(BMI计算、单位转换、输入合法性检查) 1、 单项选择题(本题共5小题) 1、已知子女成年身高预测公式:男孩身高 =(父身高 + 母身高 + 13)/2,女孩身高 =(父身高 + 母身高 - 13)/2,下列 C 语言代码实现男孩身高计算正确的是( ) A. boy_height = father + mother +13 / 2; B. boy_height = (father + mother +13) / 2.0; C. boy_height = (father + mother) +13 / 2; D. boy_height = (father + mother +13) % 2; 【答案】B 【解析】公式需优先计算父身高、母身高与 13 的和,因此要加括号保证运算顺序;使用2.0而非2是为了避免整数除法丢失精度,确保结果为浮点数,选项 B 符合要求。 2、体型判定系统中,BMI 指数计算公式为BMI=体重(kg)/(身高(m)×身高(m)),若身高输入单位为厘米,需先转换为米,下列转换代码正确的是( ) A. double height_m = height_cm / 100; B. int height_m = height_cm % 100; C. double height_m = height_cm * 100; D. float height_m = height_cm + 100; 【答案】A 【解析】厘米转米需除以 100,使用double类型存储可保证精度;选项 B 的%是取余运算符,选项 C、D 的运算逻辑完全错误,选项 A 正确。 3、在体型判定中,需根据 BMI 值判断体型(如 BMI<18.5 为偏瘦,18.5≤BMI<24 为正常),下列条件判断语句正确的是( ) A. if(bmi < 18.5) printf("偏瘦"); else if(bmi <24) printf("正常"); B. if(bmi < 24) printf("正常"); else if(bmi <18.5) printf("偏瘦"); C. switch(bmi) { case <18.5: printf("偏瘦"); break; } D. if(bmi <=18.5) printf("偏瘦"); else printf("正常"); 【答案】A 【解析】条件判断需按从低到高的顺序,先判断偏瘦的临界值,再判断正常的临界值;选项 B 的顺序会导致所有 BMI<24 的情况都被判定为正常,错误;switch不能直接使用范围条件,选项 C 错误;选项 D 的临界值包含 18.5,不符合题目标准,选项 A 正确。 4、开发身高预测系统时,输入父母身高适合使用的数据类型是( ) A. char B. int C. double D. short 【答案】C 【解析】父母身高可能包含小数(如 175.5cm),double类型能存储带小数的数值且精度更高;char、short、int只能存储整数,会丢失小数部分的精度,选项 C 正确。 5、下列关于身高预测与体型判定系统的描述,错误的是( ) A. 需使用scanf获取用户输入的身高、体重等数据 B. 体型判定需用到逻辑运算符组合条件 C. 身高预测公式中的加减 13 是固定的经验值 D. 所有计算都必须使用整数类型保证结果准确 【答案】D 【解析】身高、体重及计算结果多为小数,使用浮点类型(float/double)才能保证精度,使用整数类型会导致结果误差较大,选项 D 描述错误。 2、 判断题(本题共4题) 1、在身高预测系统中,判断用户输入的性别为男孩时,可使用条件if(sex == '男'),其中sex需定义为char类型。( ) 【答案】× 【解析】C 语言的 char 类型仅支持单个字符,不能存储 “男” 这类汉字,'男' 是非法字符常量,该语句不能正确运行。 2、体型判定中,若身高输入为 175 厘米,直接代入 BMI 公式bmi = weight/175*175即可得到正确结果。( ) 【答案】× 【解析】BMI 公式要求身高单位为米,需先将 175 厘米转换为 1.75 米,且正确的运算应为weight/(1.75*1.75),直接用厘米计算会导致结果放大 10000 倍,完全错误。 3、身高预测系统中,使用printf("预测身高:%.1fcm ", height);可以保留 1 位小数输出预测结果。( ) 【答案】√ 【解析】%.1f是格式化输出符,用于指定浮点数保留 1 位小数输出,符合身高结果的展示需求,语法正确。 4、在体型判定的多分支结构中,else语句必须和if语句配对使用,不能单独存在。( ) 【答案】√ 【解析】C 语言中else是if的分支补充,必须依附于前面的if语句,单独的else会导致编译错误,逻辑规则正确。 3、 程序填空题(本题共1题) 1、题目描述:以下程序实现身高预测 + 体型判定的综合功能,用户输入父母身高、自身性别、当前身高体重,先预测成年身高,再判定当前体型,需补充缺失代码; (1) // 引入标准输入输出头文件 int main() { double father_h, mother_h, predict_h, self_h, weight, bmi; char sex; printf("请输入父亲身高(cm)、母亲身高(cm):"); scanf("%lf %lf", &father_h, &mother_h); printf("请输入你的性别(男/女):"); scanf(" %c", &sex); // 预测成年身高 if(sex == '男'){ predict_h = (2) ; } else if(sex == '女'){ predict_h = (father_h + mother_h -13)/2.0; } printf("你的成年预测身高为:%.1fcm ", predict_h); printf("请输入你的当前身高(cm)、体重(kg):"); scanf("%lf %lf", &self_h, &weight); // 计算BMI指数 (3) ; // 判定体型 printf("你的当前体型:"); if(bmi < 18.5){ printf("偏瘦 "); } else if((4) ){ printf("正常 "); } else if(bmi <28){ printf("超重 "); } else { printf("肥胖 "); } return 0; } 【答案】 (1)#include <stdio.h> (2)(father_h + mother_h +13)/2.0 (3)bmi = weight / ((self_h/100)*(self_h/100)) (4)bmi >=18.5 && bmi <24; 【解析】 (1)程序使用scanf、printf等输入输出函数,必须包含<stdio.h>头文件,确保编译器识别这些函数; (2)对应男孩身高预测公式,先计算父身高、母身高与 13 的和,再除以 2.0 避免整数除法,保证结果为浮点数; (3)先将厘米转换为米(self_h/100),再计算身高的平方,最后用体重除以该值得到 BMI 指数,符合公式逻辑; (4)对应体型正常的 BMI 区间,需用逻辑与运算符&&同时满足两个条件,保证区间判断的准确性。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $

资源预览图

第10练 单元3 身高体型判定系统实现(BMI计算、单位转换、输入合法性检查)《C语言程序设计》(高教版第2版)一课一练
1
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。