欢迎来到天天文库
浏览记录
ID:48061268
大小:338.50 KB
页数:49页
时间:2020-01-13
《C语言程序设计 函数.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章函数第六章函数教学要求一、学习要求1.掌握函数的定义与调用2.掌握函数间参数的传递方法二、学习重点1.函数的返回值2.函数实参与形参的关系3.函数间参数的传递6.1函数概述一、c语言函数与模块化程序设计方法程序员在设计一个复杂的应用程序时,往往把整个程序划分为若干功能较为单一的程序模块,然后分别予以实现,最后再把所有的程序模块像搭积木一样装配起来,这种策略被称为模块化程序设计方法。在c语言中,函数是程序的基本组成单位,因此可以利用函数作为程序模块来实现c语言程序。需要定义成函数的程序段所具备的条件(供参考):1、程序中可能有重复出现的相同或相似的计算片度
2、。可以考虑从中抽取共同的东西,定义为函数。2、程序中具有逻辑独立性的片段。即使这种片段只出现一次,也可以考虑把它定义成独立的函数。这种做法的主要作用是分解程序复杂性,使之更容易理解和把握。二、函数的分类从定义角度分为库函数和自定义函数。从兼有其他语句功能角度分为有返回值函数和无返回值函数。从函数间数据传送角度分为无参函数和有参函数。三、主函数C语言中所有的函数定义都是平行的。即不允许在一个函数体内定义另一个函数。但是函数之间允许相互调用。C程序里总有一个叫main的函数,称为主函数。C程序的执行总是从main函数开始,完成对其它函数的调用后再返回到main函数
3、,最后由main函数结束整个程序。注意:任何其它函数都不可以调用主函数。6.2函数的定义和调用一、函数的定义1、无参函数的一般形式类型说明符函数名(){类型说明语句}说明:(1)类型说明符指明了函数返回值的类型。函数名是由用户定义的标识符,函数名后的括号不可缺少。函数头函数体(2)在函数体中也有类型说明,这是对函数体内部所用到的变量的类型说明。(3)定义函数时应写返回值类型,如果无参函数没有返回值,函数类型可以用关键字void。例1:定义一个无参函数。voidhello(){printf(“Hello,howdoyoudo?”);}这里,hello是一个无
4、参函数的函数名,当被其它函数调用时,输出“Hello,howdoyoudo?“字符串。2、有参函数的一般形式类型说明符函数名(形式参数表){类型说明语句}说明:(1)行参表中给出的参数称为形式参数(简称行参),它们可以是各种类型的变量,各参数之间用逗号隔开。在进行函数调用时,主调函数将赋予这些形式参数实际的值(简称实参)。(2)形式参数既然是变量,当然必须有类型说明。例2:定义一个函数,求两个数中较小的数。intmin(inta,intb){if(a>b)returnb;elsereturna;}程序分析:(1)min函数是一个整型函数,其返回值是一个整数。行
5、参为整型变量a,b。a,b的具体值是有主调函数在调用时传送过来的。(2)在{}中的函数体内,除行参外没有使用别的变量,因此只有语句没有变量类型说明。(3)函数体中的return语句是把a(或b)的值作为函数的值返回给主调函数。在有返回值的函数中至少应该有一个return语句。注意:函数可以放在程序的任何位置,既可以放在main之前,也可以放在main之后。例3:求两个数中较小的数#includeintmin(inta,intb){if(a>b)returnb;elsereturna;}voidmain(){intx,y,z;printf(“p
6、leaseinput2number:”);scanf(“%d%d”,&x,&y);z=min(x,y);Printf(“minnum=%d”,z);}3、函数原型说明在主调函数调用某函数之前应对被调函数进行原型说明。在主调函数中对被调用作说明的目的是使编译程序知道被调函数返回值类型,以便在主调函数中按此种类型对返回值作相应的处理。对被调函数的原型说明,其一般格式为:类型说明符被调函数名(类型行参1,类型行参2…);或者为类型说明符被调函数名(类型,类型…);在c语言中,下面几种情况可以不用对被调函数作原型说明。(1)被调函数出现在主调函数之前;(2)在
7、定义所有函数之前,在函数外预先说明了各个函数的类型;(3)对库函数的调用。建议在任何情况下都写函数原型的编程风格。二、函数的调用1、函数调用的形式在c语言中,函数调用的一般形式为:函数名(实际参数表);对无参函数调用时没有实际参数表。实际参数表中的参数可以是常数、变量和表达试,各实参之间用逗号隔开。在c语言中,可以用以下几种方式调用函数:(1)函数表达式。函数作为表达式中的一项出现在表达式中,以函数返回值参与表达式的运算。例:z=min(x,y);(2)函数语句。在函数的末尾加上一个分号构成函数语句。例:hello();printf(“%d”,a);(3)函数
8、作为另一个函数的实参。例:z=min(
此文档下载收益归作者所有