1、一个较大的程序常分为若干模块,每个模块实现一个特定 的功能。 2、C语言中用函数来实现模块的功能。一个C语言源程序文 件通常由一个main函数和若干个其它函数组成。 3、C程序的执行从main函数开始,由主函数调用其它函数, 其它函数也可以相互调用,程序流程最后回到main函数,在 main函数中结束整个程序的运行。 4、一个函数(主调函数)可以多次调用多个函数(被调函数) 同一个函数也可以被一个或多个函数调用任意多次。但不能 调用main函数。 main 心U
1、一个较大的程序常分为若干模块,每个模块实现一个特定 的功能。 2、C语言中用函数来实现模块的功能。一个C语言源程序文 件通常由一个main函数和若干个其它函数组成。 3、C程序的执行从main函数开始,由主函数调用其它函数, 其它函数也可以相互调用,程序流程最后回到main函数,在 main函数中结束整个程序的运行。 4、一个函数(主调函数)可以多次调用多个函数(被调函数) 。同一个函数也可以被一个或多个函数调用任意多次。但不能 调用main函数。 main a b c f d e f g h i d
5、所有函数在定义时都是平行的,相互独立(一个函数并不 从属于另一个函数),即函数不能嵌套定义,但可以相互调 用 main( i stars(20); print message(; stars(20); stars(int n) i int i; for(i=0; i<n; i++) printf(*); printf"n" n"); print message() i printf("How do you do! n")
5、所有函数在定义时都是平行的,相互独立(一个函数并不 从属于另一个函数),即函数不能嵌套定义,但可以相互调 用。 main( ) { stars(20); print_message( ); stars(20); } stars(int n) { int i; for (i=0; i<n; i++) printf("*"); printf("\n"); } print_message( ) { printf("How do you do!\n"); }
6、函数分类: (1)、使用情况: 标准函数:由系统定义,用户不必自己定义,可以直接使用 >用户自定义函数 int max(int x, int 2、函数形式: y i int z; 有参函数:主调函数与被调函数之if(x>y)z=x; 间有数据传递 eise zy >无参函数:主调函数与被调函数之 return(z) 间没有数据传递 (、任务情况: void main( i int a, b, c; 带返回值 scanf(%d%d", &a, &b) 不带返回值 c=max(a, b) printf("max=%d\n" 心U
⑵、函数形式: ➢有参函数:主调函数与被调函数之 间有数据传递 ➢无参函数:主调函数与被调函数之 间没有数据传递 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\n",c); } ⑶、任务情况: ➢ 带返回值 ➢ 不带返回值 6、函数分类: ⑴、使用情况: ➢标准函数:由系统定义,用户不必自己定义,可以直接使用 ➢用户自定义函数
32函数的定义
3.2 函数的定义
1、形式: 类型标识符函数名(形式参数表列) void main() 变量声明部分 语句部分 int max(int x, int y) ■■■■■ 2、说明: ①、函数名:用户给函数起的名字,必须符合标识符命名规则 ②、类型标识符:指定函数返回值的类型 若函数无返回值,函数定义时应写上void 心U
1、形式: 类型标识符 函数名(形式参数表列) { 变量声明部分 语句部分 } 2、说明: ①、函数名:用户给函数起的名字,必须符合标识符命名规则 ②、类型标识符:指定函数返回值的类型 若函数无返回值,函数定义时应写上 void int max(int x, int y) { …… } void main( ) { …… }