C语言程序设计教程(第二版)教学课件徐新华第07章 函数与变量作用域.ppt

C语言程序设计教程(第二版)教学课件徐新华第07章 函数与变量作用域.ppt

ID:50352695

大小:326.00 KB

页数:63页

时间:2020-03-08

C语言程序设计教程(第二版)教学课件徐新华第07章 函数与变量作用域.ppt_第1页
C语言程序设计教程(第二版)教学课件徐新华第07章 函数与变量作用域.ppt_第2页
C语言程序设计教程(第二版)教学课件徐新华第07章 函数与变量作用域.ppt_第3页
C语言程序设计教程(第二版)教学课件徐新华第07章 函数与变量作用域.ppt_第4页
C语言程序设计教程(第二版)教学课件徐新华第07章 函数与变量作用域.ppt_第5页
资源描述:

《C语言程序设计教程(第二版)教学课件徐新华第07章 函数与变量作用域.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第7章函数与变量作用域C语言是通过函数来实现模块化程序设计的。教学目的:掌握函数的定义与调用,变量的作用域;了解函数的嵌套与递归调用,内部、外部函数特点,以及变量的存储特性。7/21/20211教学内容:7.1*函数的定义与调用7.2函数的嵌套调用与递归调用7.3内部函数与外部函数7.4*内部变量与外部变量7.5变量的存储特性本章要点本章作业与上机实践7/21/202127.1*函数定义与函数调用7.1.1函数定义任何函数都是由函数说明和函数体两部分组成。1.分类根据函数有无参数,将函数分为无参函数和有参函数。7/21/20213(1

2、)无参函数[函数类型]函数名(void){说明语句部分;可执行语句部分;}(2)有参函数[函数类型]函数名(数据类型参数[,数据类型参数2…]){说明语句部分;可执行语句部分;}形参表。调用有参函数时,由调用函数为形参提供实际值,简称为实参。在新标准中,函数不可缺省参数表;用“void”表示不需要参数。7/21/202142.函数的返回值与函数类型C语言的函数,还可分为有返回值函数和无返回值函数两种。(1)有返回值函数与return语句①一般格式:return(返回值表达式);②功能:返回调用函数,并将“返回值表达式”的值带给调用函数

3、。注意:函数中无return语句,返回1个不确定的值。可用“void”定义成“无(空)类型”,明确表示不返回值。括号可以缺省7/21/20215(2)函数类型①函数类型应与return语句中“返回值表达式”的类型一致。如果不一致,则以函数类型为准。②如果缺省函数类型,则系统一律按int型处理。良好的程序设计习惯:为了使程序具有良好的可读性并减少出错,将无返回值函数定义为空类型void;同时,也不使用系统对函数类型的缺省处理。7/21/20216[案例7.1]定义一个求两个整数中极大值的max()函数。/*功能:求2个整数中的较大数*/

4、/*形参:2个,整型*//*返回值:2个整数中的较大数*/intmax(intn1,intn2)/*函数定义*/{return(n1>n2?n1:n2);}/**/voidmain(void){intmax(intn1,intn2);/*对被调用函数进行说明*/intnum1,num2;printf("inputtwonumbers:");scanf("%d%d",&num1,&num2);printf("max=%d",max(num1,num2));}对函数的注释7/21/202173、说明(1)函数定义不允许嵌套。一个函数的

5、定义,可以放在程序中的任意位置,但不能在另一个函数的函数体内,即不能嵌套定义。例如:main(){……intmax(……){……}}(2)空函数──函数体为空的无参函数:[函数类型]函数名(void){}7/21/202187.1.2函数调用与返回1、对被调用函数的说明和函数原型(1)函数说明的一般格式在新标准中,采用函数原型方式,对被调用函数进行说明:函数类型函数名(形参表);7/21/20219(2)函数说明的两种方式①谁调用谁说明:函数说明语句放在调用函数的函数体中。例如,在[案例7.1]主函数main()中:voidmain(

6、void){intmax(intn1,intn2);……}对被调用函数进行说明7/21/202110②预先统一说明——函数说明通常放在所有函数定义体之前。在这种方式下,所有调用函数都无需再对自定义函数进行说明。例如,在[案例7.1]中,可以将对max()函数的说明放在程序文件开始处:voidmain(void){intmax(intn1,intn2);……}7/21/202111显然,对于被多个函数调用的自定义函数而言,采用预先统一说明方式进行说明,可以有效地减少函数说明次数。注意:如果被调用函数的定义体,出现在调用函数之前,可以缺省

7、说明。7/21/2021122、函数调用函数名([实参表])例如,在[案例7.1]的主函数中:printf(……,max(num1,num2));注意:调用有参函数,必须提供实参(常量/变量/表达式/函数)。调用时,实参必须具有确定的值,且与形参个数相等、类型匹配。7/21/202113(1)调用方式①语句方式——无返回值函数的调用,可作为一条独立的语句。例如,printf()、scanf()等库函数的调用,均作为一条独立的语句。②表达式方式——有返回值函数作为表达式的一项,以函数返回值参与表达式的运算。例如,“max=max(x,y

8、)”是一个赋值表达式,把max()函数的返回值赋予变量max。7/21/202114(2)断点与函数调用的返回断点——被调用函数执行完毕,返回调用函数后继续执行的位置。调用函数中的断点位置分两种情况:①语句调用方式:断点

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。