6.2函数调用(教案)-《C语言程序设计》同步教学(电子工业版)

2024-11-18
| 5页
| 89人阅读
| 0人下载
普通

内容正文:

课程单元教案 本课编号 17 本课课时 2学时 内容提要 项目6 函数应用 任务2 函数调用 教学目的 1、理解函数的形参和实参。 2、理解函数的返回值。 3、掌握函数简单调用的形式。 4、掌握函数如何声明。 知识能力 结构 理解函数的参数和返回值;掌握如何调用函数和声明函数。 教学重点 难点 重点:函数参数;函数返回值;函数调用形式。 难点:函数调用形式。 教学手段 方法 教学方法:项目任务驱动教学法、提问式、启发式 教学手段:课堂讲授法、操作演示法、多媒体教学 思考题与 习题 1、函数参数间如何传递。 2、利用自定义函数求三个数中的大数。 教学内容进程设计 项目导入:综合实践6 学生成绩管理系统功能模块化设计 项目描述:利用自定义函数将学生成绩管理系统中的功能独立出来,进行模块化设计。 问题导入:如何实现学生成绩信息系统功能模块化设计? 根据课前预习及搜集的资料,对函数的概念有一个初步的了解,以方便进行下面知识内容的学习。 任务2 函数调用 2.1函数参数 假设定义了一个函数max,功能是求两个数中的大数。而实际要比较大小的数在主函数中进行输入,那如何能在主函数中利用max函数来比较输入的两个数呢?即函数之间如何进行数据的传送呢? 例:使用自定义函数比较两个数的大小并输出大数。 #include<stdio.h> void max(int x,int y) {int z; if(x>y) z=x; else z=y; printf(“max=%d ”,z);} main( ) {int a,b; printf(“请输入两个数字: ”); scanf(“%d,%d”,&a,&b); max(a,b);} main()函数中的实参a和b将实际数值传递给max函数的形参x和y,如图所示: 说明: (1)形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。 (2)实参可以是常量、变量、表达式等,在进行函数调用时,把确定的值传送给形参。 (3)实参和形参在数量、类型和顺序上应严格一致 。 (4)函数调用中发生的数据传送是单向的。 2.2 函数返回值 函数的返回值是指函数被调用之后,返回给主调函数的值。 return语句一般形式: return 表达式;或return(表达式); 例:使用自定义函数比较两个数的大小并输出大数。 #include<stdio.h> int max(int x,int y) {int z; if(x>y) z=x; else z=y; return(z); } main( ) {int a,b,c; printf(“请输入两个数字: ”); scanf(“%d,%d”,&a,&b); c=max(a,b); printf(“max=%d ”,c);} 说明:(1)在函数中允许有多个return语句,但每次调用只能有一个return语句被执行。 (2)函数返回值的类型和函数定义中函数类型应保持一致。如果不一致,以函数类型为准。 (3)函数中不带return时,其右大括号将流程返回调用函数。 (4)不返回函数值的函数,可以明确定义为“空类型”,类型说明符为“void”。如果类型说明缺省,则系统默认为整型。 2.3 函数调用形式 函数调用的一般形式: 函数名(实际参数表) 功能:使程序流程转向被调用函数,执行被调函数,完成被调函数的功能。 说明:(1)如果是调用无参函数,格式为:函数名()。 (2)实际参数表中的参数可以是常数、变量或表达式,各实参之间用逗号分隔。 (3)实参与形参的个数应该相等,类型一致,顺序要一一对应。 三种调用方式: 将函数作为表达式调用 c=max(a,b);要求函数有返回值 将函数作为语句调用 max(a,b);不要求函数有返回值 将函数作为实参调用 printf("%d",max(a,b)); 要求函数有返回值 2.4 函数声明 与使用变量之前要先进行变量声明一样,在调用某函数之前也应对该被调函数进行声明。 函数声明的一般形式为: 函数类型 函数名(类型 形参1,类型 形参2…); 函数类型 函数名(参数类型1,参数类型2…); 说明:(1)被调用函数必须是已经定义的函数(库函数或用户自定义函数)。 (2)如果使用库函数,需要在文件开头用#include命令将库函数的信息包含到本文件中。例如,标准输入/输出头文件“stdio.h”,数学头文件“math.h”和字符串头文件“string.h”。 (3)如果使用用户自定义函数,该函数的位置可以放在主调函数的后面,但要在主调函数中对被调用函数作声明,即函数定义声明。 (4)如果被调函数的定义写在主调函数之前,可以省略函数声明。 (5)如果被调函数的返回值是整型或字符型时,可以省略函数声明。 (6)调用库函数时可以省略函数声明,但必须在源文件开头包含该函数的头文件。 (7)如在所有函数定义之前,在函数外预先说明了各个函数的类型,则在以后的各主调函数中,可不再对被调函数作说明。 例:用自定义函数求两个整数之和。(对比两种函数声明方法) 方法1:主调函数在前,被调用函数在后。 #include<stdio.h> main() { int x,y; printf(“请输入两个数字: ”); scanf("%d%d",&x,&y); printf("s=%d ",sum(x,y));} int sum(int a,int b ){ return a+b;} 编译错误为:‘sum’:undeclared identifier,即sum是未定义标识符。改写为方法2. 方法2:主调函数在后,被调用函数在前。 #include<stdio.h> int sum(int a,int b ){ return a+b;} main() { int x,y; printf(“请输入两个数字: ”); scanf("%d%d",&x,&y); printf("s=%d ",sum(x,y));} 方法3:主调函数在前,被调用函数在后,添加函数定义声明。 #include<stdio.h> main() { int x,y; int sum(int a,int b ); printf(“请输入两个数字: ”); scanf("%d%d",&x,&y); printf("s=%d ",sum(x,y));} int sum(int a,int b ){ return a+b;} 说明:(1)如果被调函数的定义写在主调函数之前,可以省略函数声明。 (2)如果被调函数的返回值是整型或字符型时,可以省略函数声明。 (3)调用库函数时可以省略函数声明,但必须在源文件开头包含该函数的头文件。 随堂实训练习: 1、利用自定义函数求三角形面积。 2、输入一个正整数,判断是否是素数,是返回1,否则返回0。 教学小结 1.理解函数形参和实参的概念以及参数间如何传递。 2.理解函数返回值的含义。 3.掌握函数简单调用的三种形式。 4.掌握函数声明的格式和用法。 学科网(北京)股份有限公司 $$

资源预览图

6.2函数调用(教案)-《C语言程序设计》同步教学(电子工业版)
1
6.2函数调用(教案)-《C语言程序设计》同步教学(电子工业版)
2
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。