第六章丞数 §6.1概述 ★模块化程序设计 基本思想:将一个大的程序按功能分割成一些小模块, 必特点: ●各模块相对独立、功能单一、结构清晰、接口简单 ●控制了程序设计的复杂性 ●提高元件的可靠性 ●缩短开发周期 ●避免程序开发的重复劳动 ●易于维护和功能扩充 必开发方法:自上向下,逐步分解,分而治之
第六章 函数 §6.1 概述 模块化程序设计 ❖基本思想:将一个大的程序按功能分割成一些小模块, ❖特点: ⚫各模块相对独立、功能单一、结构清晰、接口简单 ⚫控制了程序设计的复杂性 ⚫提高元件的可靠性 ⚫缩短开发周期 ⚫避免程序开发的重复劳动 ⚫易于维护和功能扩充 ❖开发方法: 自上向下,逐步分解,分而治之
★C是模块化程序设计语言 C程序 源程序文件1 源程序文件1 源程序文件n 预编译命令 函数1 函数n 说明部分 执行部分 C程序结构 四C是函数式语言 四必须有且只能有一个名为man的主函数 四C程序的执行总是从main函数开始,在main中结束 四函数不能嵌套定义,可以嵌套调用
C是模块化程序设计语言 源程序文件1 预编译命令 说明部分 执行部分 函数1 函数n 源程序文件i 源程序文件n C程序 C程序结构 C是函数式语言 必须有且只能有一个名为main的主函数 C程序的执行总是从main函数开始,在main中结束 函数不能嵌套定义,可以嵌套调用
★函数分类 冬从用户角度 ●标准函数(库函数):由系统提供 ●用户自定义函数 从函数形式 ●无参函数 ●有参函数 使用库函数应注意: 1、函数功能 2、函数参数的数目和顺序,及各参数意义和类型 3、函数返回值意义和类型 4、 需要使用的包含文件 Ch7201.c
函数分类 ❖从用户角度 ⚫标准函数(库函数):由系统提供 ⚫用户自定义函数 ❖从函数形式 ⚫无参函数 ⚫有参函数 使用库函数应注意: 1、函数功能 2、函数参数的数目和顺序,及各参数意义和类型 3、函数返回值意义和类型 4、需要使用的包含文件 Ch7_201.c
函数返回值类型 §6.2函数的定义 缺省int型 ★一般格式 无返回值void 合法标识符 现代风格: 函数类型 函数名(形参类型说明表) 函数体 说明部分 语句部分 例无参函数 printstar() printfc**********n) 或 printstar(void) 为空 { printf(****n”);
§6.2 函数的定义 一般格式 合法标识符 函数返回值类型 缺省int型 无返回值void 函数体 函数类型 函数名(形参类型说明表) { 说明部分 语句部分 } 现代风格: 例 有参函数(现代风格) int max(int x,int y) { int z; z=x>y?x:y; return(z); } 例 有参函数(现代风格) int max(int x, y) { int z; z=x>y?x:y; return(z); } 例 空函数 dummy( ) { } 函数体为空 例 无参函数 printstar( ) { printf(“**********\n”); } 或 printstar(void ) { printf(“**********\n”); }
传统风格: 函数类型 函数名(形参表) 形参类型说明 说明部分 语句部分 例 有参函数(传统风格) int max(xy) int x,y, int z; z=x>y?x:y, return(z);
函数类型 函数名(形参表) 形参类型说明 { 说明部分 语句部分 } 传统风格: 例 有参函数(传统风格) int max(x,y) int x,y; { int z; z=x>y?x:y; return(z); }