第八章函数 ■8.1函数概述 ■8.2函数定义的一般形式 ■8.3函数参数和函数的值 ■8.4函数的调用 ■8.5函数的嵌套调用 8.6函数的递归调用 ■8.7数组作为函数参数 ■8.8局部变量和全局变量
第八章 函数 ◼ 8.1 函数概述 ◼ 8.2 函数定义的一般形式 ◼ 8.3 函数参数和函数的值 ◼ 8.4 函数的调用 ◼ 8.5 函数的嵌套调用 ◼ 8.6 函数的递归调用 ◼ 8.7 数组作为函数参数 ◼ 8.8 局部变量和全局变量
81函数概述 #include <stdio. h #include <math.h> 有关C函数的介绍 void main( 个源程序文件由一个{inta,b,c 或多个函数组成 scanf(“%d%d”,&a,&b) 2.一个C程序由一个或多个 c=arabs(b) 源程序文件组成 printf("c=%dn”,c); 3.C程序从maim函数开始执行,} 调用其他函数后再返回到main函数 4.所有函数都是平行的,定义函数时是互相独立的, 函数之间可以互相调用,但是不能调用main函数
8.1 函数概述 一、有关C 函数的介绍 1. 一个源程序文件由一个 或多个函数组成 2. 一个C程序由一个或多个 源程序文件组成 3. C程序从main函数开始执行, 调用其他函数后再返回到main 函数 4. 所有函数都是平行的, 定义函数时是互相独立的, 函数之间可以互相调用, 但是不能调用main函数 #include <stdio.h> #include <math.h> void main( ) { int a, b, c; scanf(“%d%d”, &a, &b) ; c=a+abs(b); printf(“c=%d\n”, c); }
、C函数的分类 1.从用户使用角度分为:标准函数和用户自定义函数 2从函数的形式分为无参函数和有参函数函数定义 include <stdio.h> #include stdio.h> void list(void int max (int x, int y) i int z printf(“***n”); if(x>y)z=x;形式参数 else zy return(z; void main( list(; prin(“ good I实在参数 void main( 函数调用 f int a,b, c; ist(;/用户自定义 ia(“%d%&a,&b); 函数 c=max(a, b), printf("max=%d”,);
二、C 函数的分类 1. 从用户使用角度分为: 标准函数和用户自定义函数 2. 从函数的形式分为: 无参函数和有参函数 #include <stdio.h> int max(int x, int y) { int z ; if (x>y) z=x ; else z=y ; return(z) ; } void main( ) { int a ,b ,c ; scanf(“%d%d”,&a,&b); c=max(a,b); printf(“max=%d”,c); } 函数定义 函数调用 形式参数 #include <stdio.h> void main( ) { printf(“******\n”); printf(“ good \n”); printf(“******\n”); } /*printf是标准函数*/ #include <stdio.h> void list(void) { printf(“******\n”); } void main( ) { list( ) ; printf(“ good \n”); list ( );/*用户自定义 函数*/ } 实在参数
82函数定义的一般形式 1.定义格式:函数类型函数名(形式参数表 函数体; 2.说明 (1)函数名:用户定义的合法标识符 (2)函数的类型:函数返回值的类型 若返回值为int或char类型,函数定义时可省略不写 若函数无返回值,函数定义时应写上vod类型 void list(void) { printf(“**n”);}
8.2 函数定义的一般形式 1. 定义格式 : 函数类型 函数名 ( 形式参数表) { 函数体 ; } 2. 说明 (1) 函数名 : 用户定义的合法标识符 (2) 函数的类型: 函数返回值的类型 若返回值为int 或char 类型, 函数定义时可省略不写 若函数无返回值, 函数定义时应写上void 类型 void list(void) { printf(“******\n”); }
(3)形式参数 ①书写格式:每一个参数都要写上数据类型和参数名 参数之间以逗号分隔,无参数时一般写上void声明它为空 ②作用:表示将从主函数中接收哪些类型的信息 例: int max(intx,inty) int z, z-X>y:X: y; return(z (4)函数体:由变量声明和语句组成 ①函数体内定义的变量是局部量,只在执行该函数时存在 ②函数体可以为空即存在空函数) void f(void){}
(3) 形式参数 ① 书写格式 : 每一个参数都要写上数据类型和参数名 参数之间以逗号分隔, 无参数时一般写上void 声明它为空 ② 作用 : 表示将从主函数中接收哪些类型的信息 例 : int max( int x , int y ) { int z ; z = x > y ? x : y ; return( z ) ; } (4) 函数体 : 由变量声明和语句组成 ① 函数体内定义的变量是局部量, 只在执行该函数时存在 ② 函数体可以为空(即存在空函数) void f (void) { }