计算机语言编程函数课件.ppt
《计算机语言编程函数课件.ppt》由会员分享,可在线阅读,更多相关《计算机语言编程函数课件.ppt(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机语言编程函数第1页,此课件共31页哦本章要点本章要点函数的定义,函数的定义域,函数的值域函数的定义,函数的定义域,函数的值域什么是函数的参数?在函数调用时,参数什么是函数的参数?在函数调用时,参数是如何传递的?是如何传递的?在使用函数的过程中,要注意哪些问题?在使用函数的过程中,要注意哪些问题?怎样确定函数的参数?怎样确定函数的参数?如何使用局部变量和全局变量?如何使用局部变量和全局变量?第2页,此课件共31页哦1 计算圆柱体积计算圆柱体积1.1 程序解析程序解析-计算圆柱体积计算圆柱体积 例例1 1 输入圆柱输入圆柱体体的高和半径,求圆柱体积的高和半径,求圆柱体积volume=*r2*
2、h。要求定义和调用函数要求定义和调用函数cylinder(r,h)计算圆计算圆柱体的体积。柱体的体积。第3页,此课件共31页哦#include#include void main(void)void main(void)/*/*计算圆柱体积计算圆柱体积计算圆柱体积计算圆柱体积*/double height,radius,volume;double height,radius,volume;double cylinder(double r,double h);double cylinder(double r,double h);/*/*函数声明函数声明函数声明函数声明*/printf(Enter
3、 radius and height:);printf(Enter radius and height:);scanf(%lf%lf,&radius,&height);scanf(%lf%lf,&radius,&height);volume=volume=cylinder(radius,height)cylinder(radius,height);/*/*调用函数调用函数调用函数调用函数*/printf(Volume=%.3fn,volume);printf(Volume=%.3fn,volume);double cylinder(double r,double h)double cylind
4、er(double r,double h)/*/*定义求圆柱体积的函数定义求圆柱体积的函数定义求圆柱体积的函数定义求圆柱体积的函数*/double result;double result;result=3.14159*r*r*h;result=3.14159*r*r*h;/*/*计算体积计算体积计算体积计算体积*/return result;return result;/*/*返回结果返回结果返回结果返回结果*/Enter radius and height:3.0 10Volume=282.743第4页,此课件共31页哦1.2 函数的定义函数的定义 函数是指完成一个特定工作的独立程序模块。
5、函数是指完成一个特定工作的独立程序模块。函数是指完成一个特定工作的独立程序模块。函数是指完成一个特定工作的独立程序模块。库函数:由库函数:由库函数:由库函数:由C C语言系统提供定义语言系统提供定义语言系统提供定义语言系统提供定义(如如如如scanfscanf()()、printf()printf()等等等等)自定义函数:需要用户自己定义自定义函数:需要用户自己定义自定义函数:需要用户自己定义自定义函数:需要用户自己定义如计算圆柱体体积函数如计算圆柱体体积函数如计算圆柱体体积函数如计算圆柱体体积函数cylindercylinder()()()()main()main()也也也也是是是是一一一一
6、个个个个函函函函数数数数,C C程程程程序序序序由由由由一一一一个个个个main()main()和和和和多多多多个个个个其其其其它它它它函函函函数构成。数构成。数构成。数构成。程程程程序序序序中中中中一一一一旦旦旦旦调调调调用用用用了了了了某某某某个个个个函函函函数数数数,该该该该函函函函数数数数就就就就会会会会完完完完成成成成一一一一些些些些特特特特定定定定的的的的工作,然后返回到调用它的地方。工作,然后返回到调用它的地方。工作,然后返回到调用它的地方。工作,然后返回到调用它的地方。函函函函数数数数经经经经过过过过运运运运算算算算,得得得得到到到到一一一一个个个个明明明明确确确确的的的的运运
7、运运算算算算结结结结果果果果,并并并并需需需需要要要要回回回回送送送送该该该该结结结结果果果果。例如,函数例如,函数例如,函数例如,函数cylinder()cylinder()返回圆柱的体积。返回圆柱的体积。返回圆柱的体积。返回圆柱的体积。函数完成一系列操作步骤,不需要回送任何运算结果。函数完成一系列操作步骤,不需要回送任何运算结果。函数完成一系列操作步骤,不需要回送任何运算结果。函数完成一系列操作步骤,不需要回送任何运算结果。第5页,此课件共31页哦1返回运算结果的函数定义返回运算结果的函数定义函数类型函数类型 函数名(形参表)函数名(形参表)/*函数首部函数首部*/*函数体函数体*/函数实
8、现过程函数实现过程 return 表达式;表达式;把函数运算的结果回送给主函数把函数运算的结果回送给主函数把函数运算的结果回送给主函数把函数运算的结果回送给主函数函数返回值的类型函数返回值的类型函数返回值的类型函数返回值的类型没有分号只能返回一个值只能返回一个值第6页,此课件共31页哦形参类型类型类型类型1 1 参数参数参数参数1 1,类型,类型,类型,类型2 2 参数参数参数参数2 2,类型,类型,类型,类型n n 参数参数参数参数n n参数之间用逗号分隔,每个参数前类型都必须分别写明参数之间用逗号分隔,每个参数前类型都必须分别写明参数之间用逗号分隔,每个参数前类型都必须分别写明参数之间用逗
9、号分隔,每个参数前类型都必须分别写明函数类型函数类型函数类型函数类型 函数名函数名函数名函数名(形参表形参表形参表形参表)函数实现过程函数实现过程函数实现过程函数实现过程 return return 表达式;表达式;表达式;表达式;不能写成不能写成 double r,hdouble cylinder(double cylinder(double r,double hdouble r,double h)double result;double result;result=3.1415926*r*r*h;result=3.1415926*r*r*h;return result;return res
10、ult;第7页,此课件共31页哦double cylinder(double r,double h)double cylinder(double r,double h)/*/*函数首部函数首部函数首部函数首部*/*/*函数体,写在一对大括号内函数体,写在一对大括号内函数体,写在一对大括号内函数体,写在一对大括号内*/double result;double result;result=3.1415926*r*r*h;result=3.1415926*r*r*h;/*/*计算圆柱体积计算圆柱体积计算圆柱体积计算圆柱体积*/return result;return result;/*/*返回运算结
11、果返回运算结果返回运算结果返回运算结果*/分析函数的定义分析函数的定义函数类型函数类型函数类型函数类型函数名函数名函数名函数名形参表形参表形参表形参表与函数类型一致与函数类型一致与函数类型一致与函数类型一致第8页,此课件共31页哦2不返回运算结果的函数定义不返回运算结果的函数定义void 函数名(参数表)函数名(参数表)函数名(参数表)函数名(参数表)/*/*/*/*函数首部函数首部*/*/*函数体函数体*/函数实现过程函数实现过程函数实现过程函数实现过程 return;/*可以省略可以省略可以省略可以省略return*/表示不返回结果表示不返回结果表示不返回结果表示不返回结果不能省略不能省略
12、不能省略不能省略voidvoid否则否则否则否则,函数类型被函数类型被函数类型被函数类型被默认默认默认默认为为为为intint第9页,此课件共31页哦例例2 输出输出5之内的数字金字塔。之内的数字金字塔。#include int main(void)void pyramid(int n);/*函数声明函数声明*/pyramid(5);/*调用函数,输出数字金字塔调用函数,输出数字金字塔*/return 0;void pyramid(int n)/*函数定义函数定义*/int i,j;for(i=1;i=n;i+)/*需要输出的行数需要输出的行数*/for(j=1;j=n-i;j+)/*输出每行
13、左边的空格输出每行左边的空格*/printf();for(j=1;j=i;j+)/*输出每行的数字输出每行的数字*/printf(%d,i);/*每个数字的前后各有一个空格每个数字的前后各有一个空格*/putchar(n);1 2 2 3 3 3 4 4 4 4 5 5 5 5 5 第10页,此课件共31页哦1.3 函数的调用函数的调用定义一个函数后,就可以在程序中调用这定义一个函数后,就可以在程序中调用这个函数。个函数。调用标准库函数时,在程序的最前面用调用标准库函数时,在程序的最前面用#include#include命令包含相应的头文件。命令包含相应的头文件。调用自定义函数时,程序中必须有
14、与调用调用自定义函数时,程序中必须有与调用函数相对应的函数定义。函数相对应的函数定义。第11页,此课件共31页哦1 1函数调用的形式和过程函数调用的形式和过程使用返回值:使用返回值:volume=cylinder(radius,height);printf(“%f n”,cylinder(radius,height);完成操作完成操作:pyramid(5);常用于常用于常用于常用于voidvoidvoidvoid类型函数的调用类型函数的调用类型函数的调用类型函数的调用常用于返回结果的函数的调用常用于返回结果的函数的调用常用于返回结果的函数的调用常用于返回结果的函数的调用常量、变量、表达式常量、
15、变量、表达式常量、变量、表达式常量、变量、表达式函数名(函数名(实参表实参表)第12页,此课件共31页哦函数调用的过程函数调用的过程 计计计计算算算算机机机机在在在在执执执执行行行行程程程程序序序序时时时时,从从从从主主主主函函函函数数数数mainmainmainmain开开开开始始始始执执执执行行行行,如如如如果果果果遇遇遇遇到到到到某某某某个个个个函函函函数数数数调调调调用用用用,主主主主函函函函数数数数被被被被暂暂暂暂停停停停执执执执行行行行,转转转转而而而而执执执执行行行行相相相相应应应应的的的的函函函函数数数数,该该该该函函函函数数数数执执执执行行行行完完完完后后后后,将将将将返返返
16、返回回回回主主主主函函函函数数数数,然然然然后后后后再再再再从从从从原先暂停的位置继续执行。原先暂停的位置继续执行。原先暂停的位置继续执行。原先暂停的位置继续执行。函函函函数数数数遇遇遇遇returnreturn或或最最后后的的大大括括号号,返回主函数返回主函数返回主函数返回主函数mainmain调用函数调用函数调用函数调用函数f f结束结束结束结束函数函数函数函数f f结束结束结束结束执执执执行行行行函数调用流程函数调用流程函数调用流程函数调用流程第13页,此课件共31页哦分析函数调用的过程分析函数调用的过程#include#include int main(void)int main(vo
17、id)double height,radius,volume;double height,radius,volume;double cylinder(double r,double h);double cylinder(double r,double h);printf(Enter radius and height:);printf(Enter radius and height:);scanf(%lf%lf,&radius,&height);scanf(%lf%lf,&radius,&height);volume=volume=cylinder(radius,height)cylinder
18、(radius,height);printf(Volume=%.3fn,volume);printf(Volume=%.3fn,volume);return 0;return 0;double cylinder(double r,double h)double cylinder(double r,double h)double result;double result;result=3.1415926*r*r*h;result=3.1415926*r*r*h;return result;return result;调用调用调用调用函数函数函数函数实参实参实参实参形参形参形参形参执行函数中的语句
19、执行函数中的语句执行函数中的语句执行函数中的语句返回调用它的地方返回调用它的地方返回调用它的地方返回调用它的地方第14页,此课件共31页哦2参数传递参数传递 函数函数函数函数定义定义定义定义时的参数被称为时的参数被称为时的参数被称为时的参数被称为形式参数形式参数形式参数形式参数(简称(简称(简称(简称形参形参形参形参)double cylinder(double double cylinder(double r r,double,double h h);函数函数函数函数调用调用调用调用时的参数被称为时的参数被称为时的参数被称为时的参数被称为实际参数实际参数实际参数实际参数(简称(简称(简称(简
20、称实参实参实参实参)volume=cylinder(volume=cylinder(radius,heightradius,height););实参实参实参实参形参形参形参形参 在参数传递过程中,实参把值复制给形参。在参数传递过程中,实参把值复制给形参。在参数传递过程中,实参把值复制给形参。在参数传递过程中,实参把值复制给形参。形参和实参形参和实参形参和实参形参和实参一一对应一一对应一一对应一一对应:数量一致,类型一致,顺序一致:数量一致,类型一致,顺序一致:数量一致,类型一致,顺序一致:数量一致,类型一致,顺序一致 形参形参形参形参:变量,用于接受实参传递过来的值:变量,用于接受实参传递过来
21、的值:变量,用于接受实参传递过来的值:变量,用于接受实参传递过来的值 实参实参实参实参:常量、变量或表达式:常量、变量或表达式:常量、变量或表达式:常量、变量或表达式单向传递单向传递单向传递单向传递第15页,此课件共31页哦3函数结果返回函数结果返回函数返回的两种情况函数返回的两种情况完完成成确确定定的的运运算算,有有一一个个运运算算结结果果返返回回给给主主调调函数。(函数。(有返回值有返回值)完完成成指指定定工工作作,没没有有确确定定的的运运算算结结果果需需返返回回给给主调函数(函数类型主调函数(函数类型void)。)。(无返回值无返回值)函数结果返回的形式:函数结果返回的形式:return
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机语言 编程 函数 课件
限制150内