C语言第4章函数PPT教学课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
函数结果返回的形式为:
return 表达式;
或
return (表达式);
先求解表达式的值,再返回其值。一般情况下表达式的类型 与函数类型一致,如果两者不一致,以函数类型为主。
此处return语句的作用有两个:一是结束函数的运行;二是
带着运算结果(表达式的值)返回主调函数。
2020/12/10
12
3.函数的调用
实参和形参必须一一对应,要求两者数量相同,类型一致。 在程序运行中,遇到函数调用时,将实参的值依次传给 形参,这个过程就是参数传递。
函数的形参必须是变量,用于接收实参传递过来的值,形参 的使用方法和普通变量相同;实参可以是常量、变量和 表达式,其作用是把常量、变量或表达式的值传递给形 参。
按照C语言的规定,在参数传递过程中,将实参的值赋值给
return 表达式;
在函数首部,函数类型指函数返回值的类型,一般与return
语句中表达式的类型一致;函数名是一个合法的标识符;
形参表中给出函数所有形参的名称和类型,形参可以是
2020/12/10一个或多个,或者没有形参。
6
2.函数的定义
1. 返回运算结果的函数定义
函数体中,函数的实现过程是一些完成特定工作的语句, return语句中的表达式反映了函数运算的结果,通过 return语句结束该函数的运行并将该结果回送给主调函 数。
{ 函数实现过程;
}
//函数首部 //函数体
2020/12/10
5
2.函数的定义
1. 返回运算结果的函数定义
函数定义包括函数首部和函数体两部分。
函数首部:函数类型、函数名、形参表
函数体:一对大括号内的若干条语句。
用return语句返回运算的结果。
return语句一般是最后一条语句。它的一般形式是:
③ 函数结果返回
例:定义一个判断奇偶数的函数even(n),当n为偶数时返回 1,否则返回0。
int even(int n)
//函数首部
{
if(n%2==0)
//判别奇偶数
return 1;
//偶数返回1
else
return 0;
//奇数返回0
}
函数中出现了两个return语句,执行时根据条件选择其中的 2020/12/10一个,它们的作用相同,即结束函数运行,如果return 13
2见020/例12/10子p81ex5-2.cpp
9
3.函数的调用
C中,调用标准库函数时,只需要在程序的最前面用 #include命令包含相应的头文件;调用自定义函数时, 程序必须有与调用函数相对应的函数定义。 ① 函数调用的形式和过程 函数调用的一般形式为:
函数名(实参表) 实参可以是常量、变量和表达式。
return语句只能返回一个值。 例如如下函数首部:
double cylinder(double r,double h)
表明:函数类型是double,即返回值的类型是double;函数 名是cylinder;函数有两个形参r和h,类型都是double。
2注020/意12/10:形参表不能写成double r,h的形式
2.函数的定义
① 函数经过运算,得到一个明确的运算结果, 并需要回送该结果。例如,函数cylinder() 要返回圆柱的体积。
② 函数只是完成一系列操作步骤,不需要回 送任何运算结果。
2020/12/10
4
2.函数的定义
1. 返回运算结果的函数定义
函数定义的一般形式为:
函数类型 函数名(形参表)
第4章 函数
定义函数 调用函数 声明函数 参数如何传递 函数的参数的确定
静态变量
2020/12/10
1
1.例:计算圆柱体积
输入圆柱的高和半径,求圆柱体积, volume=π×r2×h
要求定义和调用函数cylinder(r,h)计算圆柱 体的体积。
• 见文件78p5-1.cpp
2020/12/10
2020/12/10
8
2.函数的定义
2. 不返回结果的函数定义
void 函数名(形参表) {
函数实现过程;
//函数首部 //函数体
}
函数类型为void,表示不返回结果,函数体中可以出现 return语句,也可以省略。void类型的函数虽然不直接 返回一个值,但它的作用通常以屏幕输出等方式体现。
在不返回结果的函数定义中,void不能省略;否则,函数类 型被默认定义为int型。
7
2.函数的定义
1. 返回运算结果的函数定义
函数体中(大括号内)定义的变量是普通变量,不是形参, 只是函数实现过程中要用到的工作单元,不属于已知条 件。在定义函数时,只有必须从主调函数中得到的已知 条件,才定义为形参,其他的工作单元都定义成普通变 量。
return result;
返回运算结果,即result的值,其中result的类型是double, 与函数类型一致。
语句后面还有其他语句,将不会被执行。
3.函数的调用
④ 函数原型声明
C语言要求函数先定义后调用,将主调函数放在被调函数的 后面,就像变量先定义后使用一样。如果自定义函数被 放在主调函数的后面,就需要在函数调用前,加上函数 原型声明。
函数声明的目的主要是说明函数的类型和参数的情况,以保 证程序编译时能判断对该函数的调用是否正确。
2
2.函数的定义
函数:是一个完成特定工作的独立程序模 块,包括库函数和自定义函数两种。
例如printf()、scanf()等库函数由C语言系统 提供定义,编程时只要直接调用即可。
圆柱体积例子中的cylinder()、fact()函数, 需要用户自己定义,属于自定义函数。
2020/12/10
3
形参。这种参数传递是单向的,只允许实参把值复制给
形参,而形参的值即使在函数中改变了,也不会反过来
影响实参。
2实020/参12/10和形参必须一一对应,数量相同且类型一致。
11
3.函数的调用
③ 函数结果返回
返回值类型有两种:
完成确定的运算,有一个运算结果返回给主调函数;
完成指定工作,没有确定 的运算结果பைடு நூலகம்返回给主调函 数,通常用于实现结果化程序设计中的过程模 块,函数类型用void指定。
计算机在执行程序时,从主函数main()开始执行,如果遇到 某个函数调用,主函数main()被暂停执行,转而执行相 应的函数,该函数执行完毕后,将返回主函数main(), 然后再从原先暂停的位置继续执行。
2020/12/10
10
3.函数的调用
② 参数传递
函数定义中的参数称为形参,函数调用时的参数称为实 参。