单元3 身高体型判定系统的数据处理(3.输入输出及项目实施)(课件)-《C语言程序设计》(高教版第2版)【上好课】

2026-05-14
| 37页
| 16人阅读
| 0人下载
精品

资源信息

学段 中职
学科 职教专业课
课程 C语言程序设计
教材版本 -
年级 -
章节 -
类型 课件
知识点 数据类型和简单程序设计
使用场景 同步教学
学年 2026-2027
地区(省份) 全国
地区(市) -
地区(区县) -
文件格式 PPTX
文件大小 17.86 MB
发布时间 2026-05-14
更新时间 2026-05-14
作者 爱学习的muller
品牌系列 上好课·上好课
审核时间 2026-05-14
下载链接 https://m.zxxk.com/soft/57845783.html
价格 5.00储值(1储值=1元)
来源 学科网

内容正文:

身高体型判定系统的数据处理(3.输入输出及项目实施) C语言程序设计 -第5课时- 高教版第2版 学习目标 知识目标 掌握C语言输入输出函数(printf、scanf、putchar、getchar)的使用方法,学会运用相关函数知识,分析并解决基础的编程实际问题。 技能目标 能熟练使用输入输出函数进行数据的交互处理;独立编写完整程序,解决一元二次方程求解、列车交会时间计算、存款利息计算等典型实际应用问题。 素质目标 在编程实践中,培养运用计算思维解决实际问题的能力;锻炼逻辑推理与分析问题的思维方式,养成严谨、规范的程序设计习惯。 基础知识认知 让我们一起开启单片机的学习之旅。 教学引入 C语言中如何实现数据的输入和输出? 思考:怎样运用 C 语言解决一元二次方程、列车交会时间和存款利息计算等实际问题? 目录 输入输出函数 实际问题求解 BMI计算项目实施 名词解释 输入输出函数 程序与用户交互的核心接口,负责实现数据的输入与输出操作。 C语言标准库头文件stdio.h提供了完整的函数支持,常用核心函数包括: printf() // 格式化输出 scanf() // 格式化输入 getchar() / putchar() // 字符输入输出 格式控制字符串 用于指挥printf/scanf如何解析数据的指令集,由两部分组成: 1. 普通字符:按原样输出或忽略,用于提示信息(如“年龄:”)。 2. 格式声明:以%开头,规定数据的类型和格式。 示例:printf("Score: %d", score); 输入输出函数 第一部分 知识讲授 输入输出函数 知识讲授 头文件 头文件主要作用,提前声明函数,因为在c语言中必须先声明或定义才能使用。 知识讲授 头文件 stdio.h 为什么必须写这行代码? C语言编译器默认“不认识”printf、scanf等函数。我们需要通过 #include 指令,将包含这些函数声明的“说明书”(头文件)提前引入到程序中,编译器才能正常工作。 这是C语言中使用 输入输出功能的通行证 #include <stdio.h> 只要你的C程序需要从屏幕输出内容,或者从键盘读取数据,代码的第一行就应该写上: #include <stdio.h> 知识讲授 printf 函数 printf 是程序的“嘴巴”,也是C语言中最基础的标准输出函数。它的核心作用是将数据按照开发者指定的格式,精准地打印输出到屏幕(控制台)上。 函数一般格式 printf("格式控制串", 输出列表); 核心组成: 由两部分构成,缺一不可。前半部分规定了“怎么输出”,后半部分规定了“输出什么”。 代码实战演示 int a=20; float h=1.75f; printf("Age:%d, H:%.2f",a,h); 输出结果: Age:20, H:1.75 知识讲授 printf格式字符 📋 常用格式字符 %d :输出十进制整数 (int) %f :输出浮点数 (float/double) %c :输出单个字符 (char) %s :输出字符串 (String) %p :输出指针的内存地址 %% :输出一个普通的百分号 ⚙️ 常用格式修饰符 宽度控制 :%5d (占5位,右对齐) | %-5d (占5位,左对齐) 小数精度 :%.2f (保留2位小数) | %.4f (保留4位) 补零填充 :%05d (总宽5, 不足左侧补0) 综合示例 :%010.3f (宽10,补0,3位小数) 知识讲授 scanf函数 scanf 是 C 语言标准的输入函数,专门用于从键盘读取用户输入的数据,并将其存储到程序的变量中。 它是程序与用户交互的重要桥梁,配合 printf 可以实现完整的输入输出闭环。 知识讲授 scanf 格式字符 ▍常用格式字符 %d 读取十进制整数(int类型) %f/%lf %f读单精度(float) / %lf读双精度(double) %c 读取单个字符(包含空格/换行符) %s 读取字符串(遇空格/回车/制表符停止) 知识讲授 字符输入输出函数 除了通用的格式化输入输出函数printf和scanf,C语言还提供了专门用于单个字符处理的轻量级函数,在仅需读写单一字符的场景下更加高效便捷。 putchar() - 字符输出函数 核心功能:向标准输出设备(如屏幕)写入并显示一个字符。 语法:putchar(ch);(ch为字符型/整型变量) 示例:putchar('A');→ 在屏幕上输出字母 A getchar() - 字符输入函数 核心功能:从标准输入设备(如键盘)读取一个字符。 返回值:返回读取字符的 ASCII 码值(整数)。 语法:char ch = getchar(); 程序执行到此会暂停,等待用户按下任意键。 💡 实战演示:回显输入程序 (Echo Input) char ch; printf("请输入一个字符:"); ch = getchar(); // 阻塞等待输入 printf("你输入的字符是:"); putchar(ch); // 输出回显 背诵记忆 序号 核心概念 记忆要点 01 头文件 使用库函数需包含 stdio.h,重点记忆引入命令格式。 02 printf 输出 标准输出函数,掌握“格式控制符”与“输出列表”的一一对应规则。 03 scanf 输入 标准输入函数,重点记忆“变量前加 & 取地址”以及格式控制的匹配用法。 04 putchar 字符输出 专门用于输出单个字符的函数,记住其简洁的单参数调用功能。 05 getchar 字符输入 用于从键盘读取单个字符,注意读取回车符的特性及基本用法。 06 关键注意事项 函数参数匹配、括号完整性、输入输出缓冲区的影响等核心易错点。 例题分析 单选题 例题1:printf函数中格式声明与输出项有什么关系? A. 个数可以不一致 B. 个数必须一致,类型可以随意 C. 个数必须一致,且类型要匹配 D. 没有关系 【答案】C 【解析】在printf函数中,格式控制字符串中的格式声明(如%d, %f)的数量必须和后面输出列表中变量或表达式的数量完全一致,并且它们的类型也必须一一对应。例如,一个%d必须对应一个整数类型的数据。如果不匹配,程序可能会输出错误的结果甚至崩溃。 例题分析 通过 C 语言解决实际问题(案例展示) 第二部分 案例一 求解一元二次方程 📝 核心问题 编写程序,实现对一元二次方程ax² + bx + c = 0的自动求解。程序需根据输入的系数,智能判断并输出方程的根。 💡 标准解题流程 (4步闭环) 01 输入:获取用户输入的系数 a, b, c 02 计算:计算判别式 delta = b² - 4ac 03 判断:根据 delta 的值判断根的类型 04 输出:格式化输出最终的方程根结果 🔑 求根公式 (关键) x = [-b ± sqrt(delta)] / 2a 案例一:一元二次方程求解流程图 📌 算法执行流程逻辑 1. 初始化阶段:程序启动,准备接收用户输入的系数 a, b, c。 2. 关键计算:根据公式 Δ = b² - 4ac 计算判别式,判断根的情况。 3. 分支判断逻辑: ● 若 Δ > 0:方程有两个不相等的实数根,计算 x₁、x₂ 并输出。 ● 若 Δ = 0:方程有两个相等的实数根,计算 x 并输出。 ● 若 Δ < 0:方程无实数根,直接输出提示信息。 4. 终止:完成所有计算与输出,程序正常结束。 💻 C语言核心代码实现 #include <stdio.h> #include <math.h> intmain() { doublea, b, c, delta, x1, x2; scanf("%lf %lf %lf", &a, &b, &c); delta = b*b - 4*a*c; if(delta > 0) {// 两个不等实根 x1=(-b+sqrt(delta))/(2*a); x2=(-b-sqrt(delta))/(2*a); printf("x1=%.2f, x2=%.2f ",x1,x2);} else if(delta == 0) {// 两个相等实根 x1 = -b/(2*a); printf("x=%.2f ", x1); } else{ printf("无实数根 "); } return0; } 案例二 列车交会时间计算 问题背景:两列CR450高速动车组,车身长均为211.4米,分别以350km/h和300km/h的速度迎面驶来。试求:从两列车车头相遇到车尾完全相离,总共需要的时间是多少? 案例二 列车交会时间计算 · 流程与代码 ▍ 核心流程执行逻辑 定义常量:设定列车长度(L)、两车速度(V1/V2)及单位转换系数 计算总路程:两车交会需行驶的总距离 = 列车长度 × 2 (两车车身) 计算相对速度:(V1+V2) × 转换系数 (km/h -> m/s) 计算与输出:时间 = 总路程 ÷ 相对速度,格式化打印最终结果 核心公式:T = (2L) / [(V1+V2) * (1000/3600)] ▍ C语言代码实现 #include <stdio.h> int main() { const double L = 211.4; // 列车长度(米) const double V1=350, V2=300; // 速度(km/h) const double CONV = 1000.0/3600.0; // 转换系数 double t = (2*L) / ((V1+V2)*CONV); printf("交会时间: %.4f 秒 ", t); return 0; } 代码亮点:使用 const 定义常量增强可读性;将计算逻辑与输出分离,符合结构化程序设计思想。 案例三 存款利息计算 问题背景:在金融场景中,我们需要根据用户输入的本金、存款年限、年利率,自动计算并对比到期后的本息和。 本金 (money) | 年限 (year) | 利率 (rate) 单利 定义:仅对本金计算利息,利息不滚存。 公式:本息和 = 本金 × (1 + 利率 × 年限) 复利 定义:“利滚利”,利息加入本金再生息。 公式:本息和 = 本金 × (1 + 利率) ^ 年限 需引入 math.h 头文件,使用 pow() 函数 🚀 程序实现流程 STEP 01 数据输入 提示用户输入本金、年限、年利率 STEP 02 逻辑计算 分别调用单利、复利公式进行运算 STEP 03 结果展示 格式化输出两种方式的本息和对比 案例三 存款利息计算:流程图与代码实现 🔍 业务逻辑流程解析 1.开始:程序启动,准备接收用户输入。 2.输入:读取本金 (money)、存款年限 (year)、年利率 (rate)。 3.计算:分别套用单利和复利公式进行数值运算。 4.输出:格式化打印两种计算方式的最终本息和。 5.结束:释放资源,程序正常退出 (return 0)。 💡 核心逻辑:将数学公式(本金*(1+利率*年限))转化为计算机可执行的代码语句。 💻 C语言核心代码实现 #include <stdio.h> #include <math.h> int main() { double m, y, r; scanf("%lf%lf%lf", &m, &y, &r); double simple = m * (1 + r * y); double comp = m * pow(1 + r, y); printf("单利: %.2f 复利: %.2f ", simple, comp); return 0; } 关键说明:使用 pow() 函数计算复利时,必须引入 math.h 头文件;输出时使用 %.2f 保留两位小数,符合金额展示规范。 背诵记忆 序号 核心概念名称 核心说明与记忆要点 01 一元二次方程 核心记忆求根公式,代码实现需包含头文件 math.h,重点记忆公式结构。 02 列车交会问题 核心是计算相对速度与两车总长度之和,需熟练掌握物理运动公式,重点记忆解题过程。 03 存款利息计算 区分单利与复利计算方式,熟记不同存款年期对应的本息和数学公式,灵活代入数值。 例题分析 典型真题解析 · 头文件引用 【例题1】求解一元二次方程 ax² + bx + c = 0 的根时,程序中必须包含的头文件是? A. #include <stdio.h> (标准输入输出函数库) B. #include <math.h> (数学函数库) C. #include <stdlib.h> (通用工具函数库) D. #include <string.h> (字符串处理函数库) 【参考答案】B 【解析】:求解一元二次方程的核心步骤是计算平方根 √(b²-4ac),而平方根函数 sqrt() 是 C 语言标准数学库中的函数,其声明定义在 <math.h> 头文件中。stdio.h 仅负责输入输出,stdlib.h 负责内存分配等通用功能,string.h 负责字符串操作,均不包含 sqrt() 函数。 BMI计算项目实施 第三部分 知识讲授 BMI计算项目实施 知识讲授 身高预测系统 ▍ 项目核心功能 用户交互输入:父亲身高、母亲身高及子女性别。 程序自动计算:基于统计模型,输出子女成年后的预测身高。 ▍ 核心预测公式 儿子:(父亲身高 + 母亲身高 + 13) ÷ 2 (cm) 女儿:(父亲身高 + 母亲身高 - 13) ÷ 2 (cm) ▍ 程序执行流程 ①输入:采集父母身高与子女性别 ②判断:根据性别选择对应公式 ③输出:计算并显示最终预测结果 核心逻辑:分支判断 (If-Else) 该项目是典型的分支结构应用案例。通过“性别”这一条件,程序在运行时动态选择不同的执行路径(公式)。请注意:此公式仅为基于统计学的经验估算模型,实际身高还受营养、运动、睡眠等多重后天因素影响,结果仅供参考。 知识讲授 体型判定系统 (BMI) 📌 核心功能 & 公式 功能描述:用户输入身高(m)和体重(kg),程序自动计算BMI指数,并依据标准判定体型类别。 BMI = 体重(kg) ÷ (身高 × 身高) BMI = weight / (height²) 📊 中国成人判定标准 偏瘦:BMI < 18.5 正常:18.5 ≤ BMI < 24.0 超重:24.0 ≤ BMI < 28.0 肥胖:BMI ≥ 28.0 ⚙️ 项目执行流程 01. 数据输入 录入身高(m)与体重(kg)数值 02. 核心计算 代入公式算出BMI具体指数 03. 条件判断 比对标准区间,确定体型 04. 结果输出 显示BMI值与最终体型结论 知识讲授:项目实现 01. 身高预测系统代码核心 char gender; float f_h, m_h, pred_h; scanf("%f %f", &f_h, &m_h); getchar(); // 清除缓冲区 scanf("%c", &gender); if (gender == 'M' || gender == 'm') { pred_h = (f_h + m_h + 13) / 2; } else if (gender == 'F' || gender == 'f') { pred_h = (f_h + m_h - 13) / 2; } printf("预测身高: %.1f cm ", pred_h); 02. 体型判定系统代码核心 float h, w, bmi; scanf("%f %f", &h, &w); bmi = w / (h * h); if (bmi < 18.5) { printf("偏瘦 "); } else if (bmi < 24) { printf("正常 "); } else if (bmi < 28) { printf("超重 "); } else { printf("肥胖 "); } 背诵记忆 序号 核心概念名称 核心说明与记忆要点 01 身高预测 重点记忆男孩与女孩的身高预测公式,理解公式中各项参数的含义与计算逻辑。 02 体型判定 牢记BMI(身体质量指数)的计算公式,掌握根据输入的身高体重进行体型判定的方法。 03 项目实现 熟练运用输入输出函数获取用户数据与展示结果,结合条件判断语句完成核心逻辑的编写。 04 要点意义 理解项目实施中“模块化设计”与“数据验证”的关键要点,体会其在软件开发中的通用性意义。 随堂练习 编程练习 求一元二次方程ax^2+bx+c=0方程的两个实根。a、b、c由键盘输入。(默认b*b-4*a*c>=0) 师生互动 师生互动 1 在实际项目开发中,如何优化输入输出(IO)函数的使用,从而显著提升程序的运行效率? 知识点小结 课后任务 布置作业: 小组合作,设计一个简单的计算器程序,要求能实现加、减、乘、除四种运算,用scanf函数输入两个运算数和运算符,用printf函数输出运算结果,既能锻炼动手能力,也能培养团队协作能力。 谢谢观看 THANKS Lavf59.14.100 $

资源预览图

单元3 身高体型判定系统的数据处理(3.输入输出及项目实施)(课件)-《C语言程序设计》(高教版第2版)【上好课】
1
单元3 身高体型判定系统的数据处理(3.输入输出及项目实施)(课件)-《C语言程序设计》(高教版第2版)【上好课】
2
单元3 身高体型判定系统的数据处理(3.输入输出及项目实施)(课件)-《C语言程序设计》(高教版第2版)【上好课】
3
单元3 身高体型判定系统的数据处理(3.输入输出及项目实施)(课件)-《C语言程序设计》(高教版第2版)【上好课】
4
单元3 身高体型判定系统的数据处理(3.输入输出及项目实施)(课件)-《C语言程序设计》(高教版第2版)【上好课】
5
单元3 身高体型判定系统的数据处理(3.输入输出及项目实施)(课件)-《C语言程序设计》(高教版第2版)【上好课】
6
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。