资源描述:
《计算机c语言编程――函数ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章函数5.1计算圆柱体积5.2使用函数编写程序5.3变量与函数本章要点函数的定义,函数的调用,函数的声明什么是函数的参数?在函数调用时,参数是如何传递的?在使用函数的过程中,要注意哪些问题?怎样确定函数的参数?如何使用局部变量和全局变量?什么是静态变量?5.1计算圆柱体积5.1.1程序解析--计算圆柱体积例5-1输入圆柱体的高和半径,求圆柱体积volume=π*r2*h。要求定义和调用函数cylinder(r,h)计算圆柱体的体积。#includevoidmain(void)/*计算圆柱体积*/{
2、doubleheight,radius,volume;doublecylinder(doubler,doubleh);/*函数声明*/printf("Enterradiusandheight:");scanf("%lf%lf",&radius,&height);volume=cylinder(radius,height);/*调用函数*/printf("Volume=%.3f",volume);}doublecylinder(doubler,doubleh)/*定义求圆柱体积的函数*/{doubleresult;r
3、esult=3.14159*r*r*h;/*计算体积*/returnresult;/*返回结果*/}Enterradiusandheight:3.010Volume=282.7435.1.2函数的定义函数是指完成一个特定工作的独立程序模块。库函数:由C语言系统提供定义(如scanf()、printf()等)自定义函数:需要用户自己定义如计算圆柱体体积函数cylinder()main()也是一个函数,C程序由一个main()和多个其它函数构成。程序中一旦调用了某个函数,该函数就会完成一些特定的工作,然后返回到调用它的地方
4、。函数经过运算,得到一个明确的运算结果,并需要回送该结果。例如,函数cylinder()返回圆柱的体积。函数完成一系列操作步骤,不需要回送任何运算结果。1.返回运算结果的函数定义函数类型函数名(形参表)/*函数首部*/{/*函数体*/函数实现过程return表达式;}把函数运算的结果回送给主函数函数返回值的类型没有分号只能返回一个值形参类型1参数1,类型2参数2,……,类型n参数n参数之间用逗号分隔,每个参数前类型都必须分别写明函数类型函数名(形参表){函数实现过程return表达式;}不能写成doubler,hdou
5、blecylinder(doubler,doubleh){doubleresult;result=3.1415926*r*r*h;returnresult;}doublecylinder(doubler,doubleh)/*函数首部*/{/*函数体,写在一对大括号内*/doubleresult;result=3.1415926*r*r*h;/*计算圆柱体积*/returnresult;/*返回运算结果*/}分析函数的定义函数类型函数名形参表与函数类型一致2.不返回运算结果的函数定义void函数名(参数表)/*函数首部*
6、/{/*函数体*/函数实现过程return;/*可以省略return*/}表示不返回结果不能省略void否则,函数类型被默认为int例5-2输出5之内的数字金字塔。#includeintmain(void){voidpyramid(intn);/*函数声明*/pyramid(5);/*调用函数,输出数字金字塔*/return0;}voidpyramid(intn)/*函数定义*/{inti,j;for(i=1;i<=n;i++)/*需要输出的行数*/{for(j=1;j<=n-i;j++)/*输出每行
7、左边的空格*/printf("");for(j=1;j<=i;j++)/*输出每行的数字*/printf("%d",i);/*每个数字的前后各有一个空格*/putchar('');}}1223334444555555.1.3函数的调用定义一个函数后,就可以在程序中调用这个函数。调用标准库函数时,在程序的最前面用#include命令包含相应的头文件。调用自定义函数时,程序中必须有与调用函数相对应的函数定义。1.函数调用的形式和过程使用返回值:volume=cylinder(radius,height);printf(
8、“%f”,cylinder(radius,height));完成操作:pyramid(5);常用于void类型函数的调用常用于返回结果的函数的调用常量、变量、表达式函数名(实参表)函数调用的过程计算机在执行程序时,从主函数main开始执行,如果遇到某个函数调用,主函数被暂停执行,转而执行相应的函数,该函数执行完后,将返回主函数