第八章函数 第8章第1节 §8概述 按照结构化程序设计的思想,通常将较大的程序分成若干相对独立的 部分(子程序块),每一个子程序(块)实现某一种功能。C中的子程序 用“函数”实现。由main0函调用这些“函数” main 主函数只能有一个 调用 函数1函数2 函数n 自定义函数—程序设计者自己编写 调用 C系统提供的库函数用# inculde命令 函数a函数b 树型结构
第8章第1节 §8.1 概 述 按照结构化程序设计的思想,通常将较大的程序分成若干相对独立的 部分(子程序/块),每一个子程序(块)实现某一种功能。C中的子程序 用“函数”实现。由main()函调用这些“函数” main( ) C系统提供的库函数—用# inculde 命令 自定义函数 ——程序设计者自己编写 调用 函数1 函数2 … 函数n 主函数只能有一个 函数a 树型结构 函数b 调用
第8章第1节 maint (0 { print(2,30,*) print message; 主函数 prin(1,30,-) print(int m, int n, char c) fint i,j; for(i=l; i<=m; i++) 有参函数 i forj=1:j<=n;j++) printf("%c",c); printf("n); print messaged { printf(" How do you do!n",}卜无参函数 注意: 执行顺序:从main0开始,→调用其他函数→返回到 maino→向后执行
main() { print(2,30,'*'); print_message(); print(1,30,'-');} print(int m, int n, char c) {int i,j; for(i=1;i<=m;i++) { for(j=1;j<=n;j++) printf("%c",c); printf("\n"); } } print_message() { printf(" How do you do!\n");} 注意: 执行顺序:从main()开始, →调用其他函数→返回到main() →向后执行 第8章第1节 有参函数 无参函数 主函数
第8章第2节 §82函数定义的一般形式 无参函数的定义 形式: int,foat等 与变量命名相同 类型符函数名() {说明部分 定义其他变量 函数体 语句 例 print message { printf(“ How do you do!n”); 注:c++中的用法: void print message(void) { printf(“ How do you do:Ⅶn”);
第8章第2节 §8.2 函数定义的一般形式 一. 无参函数的定义 形式: 类型符 函数名( ) { 说明部分 语句 } int , float等 与变量命名相同 空 定义其他变量 print_message() {printf(“ How do you do!\n”); } 例 注: c++中的用法: void print_message(void) {printf(“ How do you do!\n”); } 函数体
第8章第2节 二.有参函数的定义 形式: 类型符函数名(形式参数表) {说明部分 语句 函数原型 例 void print(intm, int n, char c) 例 int max(int x, int y) fint i, fint z; r(i=1;i<=m;i++) TX>V?X {for(=1j<=n;j++) urn(z; printf("%c",c) printf( n);) 或:→ int max(intx,inty) return(fx>y?x: y;)
二. 有参函数的定义 形式: 类型符 函数名( 形式参数表) { 说明部分 语句 } void print(int m, int n, char c) {int i,j; for(i=1;i<=m;i++) { for(j=1;j<=n;j++) printf("%c",c); printf("\n"); } } 例: 例: int max(int x, int y) {int z; z=x>y?x:y; return(z); } int max(int x, int y) { return( z=x>y?x:y;) } 或: 第8章第2节 函数原型
第8章第2节 空函数 形式:类型符函数名0 函数体内无内容 空函数不作任何工作,在程序设计时,作为后备补充。 四.函数的传统方式(标准C) 形式:类型符函数名(形式参数表 声明形式参数类型 说明部分 语句} 例: int max((x,y) int max(int x, int y) int x y 对比 fint z; nt z, x>y?x: y FX>Y?: y; return(z return (z;
三. 空函数 形式: 类型符 函数名() { } 函数体内无内容 空函数不作任何工作,在程序设计时,作为后备补充。 第8章第2节 四. 函数的传统方式(标准C) 形式: 类型符 函数名( 形式参数表) 声明形式参数类型 { 说明部分 语句 } int max(x, y) int x,y; {int z; z=x>y?x:y; return(z); } 例: int max(int x, int y) {int z; z=x>y?x:y; return(z); } 对比