第8章第3节 §83函数的参数和函数的值 形式参数和实际参数 形式参数(形参)—函数定义时,函数名后面()中的变量。 实际参数(实参)—函数调用时,函数名后面()中的变量、常量、表达式。 例 mainO fint a, b, c; scanf(“%d,%d,a,&b); 1.出现在主调函数范围内; c=max (a, b); a,b为实{2.可以是变量、常量、表达 printi(max=%dn”,c);参 3.己有确切的值。 区别 int max(int x,iny←xy为形参〔L.出现在被调用的函数内 fint z; 2.只能是变量 FX>y?:y; 3.无确切值,只是一个形式上的 return (z); 变量
§8.3 函数的参数和函数的值 第8章第3节 一. 形式参数和实际参数 形式参数(形参)——函数定义时,函数名后面()中的变量。 实际参数(实参)——函数调用时,函数名后面()中的变量、常量、表达式。 例 main() {int a,b,c; scanf(“%d,%d”,&a,&b); c=max(a,b); printf(“max=%d\n”,c); } int max(int x, int y) {int z; z=x>y?x:y; return(z); } a,b为实 参 x,y为形参 1. 出现在被调用的函数内; 2. 只能是变量; 3. 无确切值,只是一个形式上的 变量; 1. 出现在主调函数范围内; 2. 可以是变量、常量、表达; 3. 己有确切的值。 区别
第8章第3节 说明:1.实参和形参的类型应一致 2.数值传递的方向(传值方向) 实形一形参单向传递(又叫“值传递 二.函数的返回值 概念:调用一个函数后,得到的一个结果 1. return语句的使用—用于函数体内,规定要代回的结果。 c-max(a 3通过函数名代回到 传值 主调函数 主调函数中去。 int max(int x, int y) fint z; Fx>yx:y; 被调用函 2被调用函数(max)中 数 return 规定了需要代回值
说明:1. 实参和形参的类型应一致; 2. 数值传递的方向(传值方向) 实形 形参 单向传递(又叫“值传递”) 二. 函数的返回值 1. return语句的使用 ——用于函数体内,规定要代回的结果。 概念:调用一个函数后,得到的一个结果 c=max(a,b) int max(int x, int y) {int z; z=x>y?x:y; return(z); } 主调函数 被调用函 数 2.被调用函数(max)中 规定了需要代回z值, 3.通过函数名代回到 主调函数中去。 1.传值 第8章第3节
第8章第3节 return语句使用中应注意的问题 )形式: return(): 变量1括号(可省。如: 常量 return z; 2)函数返回值的个数 表达式 任何函数都只能有一个返回值,不论有多少reur语句,只有 个起作用。 例 例: int max(int x, int y) mainO Rif (x>y) return(x); fint a=10, b=3; else return(y) printf((“%d,%dn”,cul(a2b); int cul(int x, int y) Rreturn(x+y); return(x-y);+永远不起作用
return语句使用中应注意的问题 第8章第3节 1). 形式: return( ); 变量 常量 表达式 括号( )可省。如: return z; 2). 函数返回值的个数 任何函数都只能有一个返回值,不论有多少return语句,只有 一个起作用。 例: int max(int x, int y) {if (x>y) return(x); else return(y); } 例: main() {int a=10,b=3; printf(“%d,%d\n”,cul(a,b)); } int cul(int x, int y) {return(x+y); return(x-y); } 永远不起作用