语言基础及教程 17_第1页
语言基础及教程 17_第2页
语言基础及教程 17_第3页
语言基础及教程 17_第4页
语言基础及教程 17_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE课题任务6.1显示车辆数据(无参数无返回值类型)课型讲练授课班级授课时数2教学目标1、了解模块化程序设计的方法2、掌握函数的定义、声明和调用3、能够自行定义简单的函数、按要求完成相关的功能教学重点1、模块化程序设计的思想2、函数的定义、声明和调用教学难点1、函数形参、实参的概念2、实参,形参之间的数据传递的学情分析函数这个知识点相对前面的其他知识点有很大的联系。教学的时候首先要让学生了解使用函数的优点,树立模块化的意识,再进一步介绍函数的其他知识。教学效果教后记项目六模块化设计[学习目标]知识目标理解函数的定义理解主调函数和被调函数、实参和形参、函数的返回值、函数的声明熟悉函数的嵌套调用熟悉函数的递归调用了解数组名作为函数的参数能力目标会函数的定义和说明格式。能通过进行函数的调用,学会函数的参数传递,得到正确的函数返回值。会利用函数的嵌套和递归调用强化模块化程序设计思路。情景设置:对于一个完整的监控系统,除了数据的采集、发送和接收,还需要在接收端显示电动汽车的运行状态,观察数据特点,并加以应对,本节通过一个显示函数实现车辆数据的显示功能。任务6.1显示车辆数据(无参数无返回值类型)6.1.1任务目标创建一个C语言程序,输出某集团新能源M型大客车6-12月新增明线表如表6-1-1所示。表6-SEQ表6-\*ARABIC1-1大客车6-12月新增明线表苏州无锡常州南京1月241413162月201616253月183020434月24108125月105686月8557任务目标运行截图如图6-1-1所示:图6-1-SEQ图6-\*ARABIC1任务目标运行截图6.1.2知识储备前面上课的内容我们已经接触了很多函数比如数学函数sqrt,字符函数strcat等。一个较大的程序都会由若干个程序模块组成。在C语言中,一般由一个主函数和若干个子函数构成。函数的概念从用户使用的角度,函数分为两种标准函数,即库函数。由系统提供,比如printf,strlen等用户自己定义的函数。也就是我们上面介绍的子函数,目的是解决用户的专门需求。2.有关函数的说明:(1)一个较大的程序一般应分为若干个程序模块,每一个模块用来实现一个特定的功能。在C语言中,用函数来实现各功能模块。(2)一个C程序可由一个main主函数和若干个其它函数构成。由主函数调用其它函数。(3)一个源程序文件由一个或多个函数组成,它们是一个整体。一个源程序是一个编译单位。(4)C程序的执行总是从main主函数开始,调用其它函数后流程回到main主函数,在main主函数中结束整个程序的运行。main主函数是系统定义的。(5)所有函数都是独立的,完成一个特定的功能。3.无参无返回函数的定义形式void函数名(){声明部分语句}主函数中的调用的写法函数名();6.1.3典型案例典型案例1:下表为某集团新能源某不同类型客车在不同时段的耗油量,编写程序,要求自定义两个函数,分别输出表头和内容。耗油量如表6-1-2所示。表6-1-SEQ表6-\*ARABIC2耗油量表时段1时段2时段3时段4时段5时段6时段7时段88.58.89.210.17.88.68.78.710.2111314.58.99.79.79.8典型案例1的流程图主要由三部分构成,其中主函数流程图如图6-1-2所示,子函数表头流程图如图6-1-3所示,子函数内容流程图如图6-1-4所示。图6-1-SEQ图6-\*ARABIC2主函数流程图图6-1-SEQ图6-\*ARABIC3表头流程图图6-1-SEQ图6-\*ARABIC4内容流程图程序代码:#include"stdio.h"voidprint_head(){ inti; printf("集团新能源某不同类型客车在不同时段的耗油量\n"); for(i=1;i<=8;i++) printf("时段%d\t",i); printf("\n");}voidprint_details(){ floatoilconsumption[2][8]={{8.5,8.8,9.2,10.1,7.8,8.6,8.7,8.7},{10.2,11,13,14.5,8.9,9.7,9.7,9.8}}; inti,j; for(i=0;i<2;i++) { for(j=0;j<8;j++) { printf("%.2f\t",oilconsumption[i][j]); } printf("\n"); }}voidmain(){ print_head(); print_details();}典型案例1运行截图如图6-1-5所示图6-1-SEQ图6-\*ARABIC5典型案例1运行截图小贴士:无参数无返回值函数时最简单的一种方式,想想大家一件事情时采用分工合作,是不是就是这种。小贴士:无参数无返回值函数时最简单的一种方式,想想大家一件事情时采用分工合作,是不是就是这种。典型案例2:从键盘输入某品牌新能源客车5名驾驶员12个月的工资,并输出。典型案例2的流程图主要由三部分构成,其中主函数流程图如图6-1-6所示,子函数输入数据流程图如图6-1-7所示,子函数输出数据流程图如图6-1-8所示。图6-1-SEQ图6-\*ARABIC6典型案例2主函数流程图图6-1-SEQ图6-\*ARABIC7输入子函数流程图图6-1-SEQ图6-\*ARABIC8输出函数流程图程序代码:#include"stdio.h"floatsalary[3][6];voidinput_salary(){ inti,j; for(i=0;i<3;i++) {printf("驾驶员%d六个月工资:",i+1); for(j=0;j<6;j++) { scanf("%f",&salary[i][j]); } }}voidoutput_salary(){ inti,j; printf("驾驶员6个月的工资明线表\n"); for(i=0;i<3;i++){ printf("驾驶员%d",i+1); for(j=0;j<6;j++) printf("%d月份",j+1); printf("\n"); for(j=0;j<6;j++) printf("%10.2f",salary[i][j]); printf("\n"); }}voidmain(){ input_salary(); output_salary();}典型案例2运行截图如图6-1-9所示图6-1-SEQ图6-\*ARABIC9典型案例2运行截图6.1.4任务分析与实践任务目标的流程图主要由四部分构成,其中主函数流程图如图6-1-10所示,子函数显示内容流程图如图6-1-11所示。图6-1-SEQ图6-\*ARABIC10任务目标主函数流程图图6-1-SEQ图6-\*ARABIC11任务目标显示内容流程图程序代码:#include"stdio.h"voidprint_head(){printf("海格新能源M型大客车6-12月新增明线表\n");printf("\n"); printf("苏州无锡常州南京\n"); }voidprint_body(){ intV_number[6][4]={{24,14,13,16},{20,16,16,25}, {18,30,20,43},{24,10,8,12},{10,5,6,8},{8,5,5,7}}; inti,j; for(i=0;i<6;i++) { printf("%d月",i+1); for(j=0;j<4;j++) { printf("%6d",V_number[i][j]); } printf("\n"); }}voidprint_foot(){ printf("制表日期:2019年1月2日");}voidmain(){ print_head(); print_body(); print_foot();}6.1.5动手练习1.需要把p1,p2各个函数输出,请填空#include<stdio.h>voidp1(){printf("*\n");printf("***\n");printf("*****\n");printf("**

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论