弗原創IT教育中心 第2讲函数 C语言是通过函数来实现模块化程序设计的。所以较 大的C语言应用程序,往往是由多个函数组成的,每个函 数分别对应各自的功能模块。 21函数的定义与调用 2.2函数的嵌套调用与递归调用 2.3数组作为函数参数 2.4内部变量与外部变量 2.5内部函数与外部函数 2.6变量的动态存储与静态存储
第2讲 函 数 C语言是通过函数来实现模块化程序设计的。所以较 语言是通过函数来实现模块化程序设计的。所以较 大的C语言应用程序,往往是由多个函数组成的,每个函 语言应用程序,往往是由多个函数组成的,每个函 数分别对应各自的功能模块。 数分别对应各自的功能模块。 2.1 函数的定义与调用 函数的定义与调用 2.2 函数的嵌套调用与递归调用 函数的嵌套调用与递归调用 2.3 数组作为函数参数 数组作为函数参数 2.4 内部变量与外部变量 内部变量与外部变量 2.5 内部函数与外部函数 内部函数与外部函数 2.6 变量的动态存储与静态存储 变量的动态存储与静态存储
弗原創IT教育中心 21函数的定义与调用 2.11函数的定义 2.1.2函数的返回值与函数类型 2.1.3对被调用函数的说明和函数原型 2.14函数的调用 2.1.5函数的形参与实参
2.1 函数的定义与调用 函数的定义与调用 2.1.1 函数的定义 2.1.2 函数的返回值与函数类型 函数的返回值与函数类型 2.1.3 对被调用函数的说明和函数原型 对被调用函数的说明和函数原型 2.1.4 函数的调用 2.1.5 函数的形参与实参 函数的形参与实参
弗原創IT教育中心 211函数的定义 1.任何函数(包括主函数main0)都是由函 数说明和函数体两部分组成。根据函数是否需要 参数,可将函数分为无参函数和有参函数两种 (1)无参函数的一般形式 函数类型函数名(vod) 说明语句部分; 可执行语句部分;
2.1 .1 2.1 .1 函数的定义 1.任何函数(包括主函数 .任何函数(包括主函数main())都是由函 数说明和函数体两部分组成。根据函 数说明和函数体两部分组成。根据函数是否需要 参数,可将函数分为无参函数和有参函数两种。 参数,可将函数分为无参函数和有参函数两种。 (1)无参函数的一般形式 )无参函数的一般形式 函数类型 函数名( void ) ( void ) { 说明语句部分; 说明语句部分; 可执行语句部分; 可执行语句部分; }
弗原創IT教育中心 (2)有参函数的一般形式 函数类型函数名(数据类型参数[,数据类型参数2.……]) 说明语句部分 可执行语句部分; 有参函数比无参函数多了一个参数表。调用有参函数时,调 用函数将赋予这些参数实际的值。 为了与调用函数提供的实际参数区别开,将函数定义中的参 数表称为形式参数表,简称形参表
(2)有参函数的一般形式 函数类型 函数名( 数据类型 参数[,数据类型 参数2……] ) { 说明语句部分; 可执行语句部分; } 有参函数比无参函数多了一个参数表。调用有参函数时,调 用函数将赋予这些参数实际的值。 为了与调用函数提供的实际参数区别开,将函数定义中的参 数表称为形式参数表,简称形参表
弗原創IT教育中心 [案例21定义一个函数,用于求两个数中的大数。 /*功能:定义一个求较大数的函数并在主函数中调用*/ int max(int nl, int n2) i return(n1>n2:n1: n2); maino int max( int n1,intn2);/*函数说明*/ int numl, 2; printf("input two numbers: n); scanf(%/d%od",&num1, &num2); printf("max=%od\n", max(num1, num2); retch; 程序运行(1)
[案例2.1] 定义一个函数,用于求两个数中的大数。 定义一个函数,用于求两个数中的大数。 /*功能:定义一个求较大数的函数并在主函数中调用 功能:定义一个求较大数的函数并在主函数中调用*/ int max(int max(int n1, int n2) { return (n1>n2?n1:n2) { return (n1>n2?n1:n2); } main() { int max(int max(int n1, int n2);/*函数说明*/ int num1,num2 num1,num2; printf("input printf("input two numbers: two numbers:\n"); scanf("%d%d scanf("%d%d", &num1, &num2) ", &num1, &num2); printf("max printf("max=%d\n", max(num1,num2)) n", max(num1,num2)); getch(); } } 程序运行(1)