1 / 93
文档名称:

c语言 9-ch09-函数.ppt

格式:ppt   大小:851KB   页数:93页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

c语言 9-ch09-函数.ppt

上传人:文库旗舰店 2018/5/16 文件大小:851 KB

下载得到文件列表

c语言 9-ch09-函数.ppt

相关文档

文档介绍

文档介绍:1. 我的程序有上百行,如何调试最方便?
2. 我想设计一个程序完成下面的计算:
m! n!
其中,m、n为正整数且m>n
(m - n)!
该如何设计程序最有效?
?
5/16/2018
1
第九章 函数
5/16/2018
2
第七章函数
目标:
理解函数的基本概念;
熟练掌握函数的定义(形参、返回值的设置);
熟练掌握函数的调用过程;
熟练掌握实参的设置、调用格式;
理解参数的对应关系,数值传递的含义和用法;
理解程序的模块化,基于函数的结构化程序设计;
理解全局变量、局部变量、局部静态变量的
作用域、定义和使用;
5/16/2018
3
概述
车厢
轮胎
底盘
一辆汽车可分为若干个部件,由若干厂家分头独立生产,我来负责组装
发动机
5/16/2018
4
一、模块化程序设计
将一个大的程序按功能分割成一些小模块。
为了支持模块化,结构化程序设计语言中引入了子程序、子函数的概念。在C语言里,子程序、子函数统一称为函数。
函数是C源程序的基本模块,通过对函数模块的调用实现特定的功能。
C语言源程序是由函数组成的。在前面各章的程序中都只有一个主函数main,但实用程序往往由多个函数组成。C语言不仅提供了极为丰富的库函数,还允许程序员建立自己定义的函数。
5/16/2018
5
【例】从键盘读入10个整数放入a数组,对其按照从大到小顺序进行排序,最后输出。
分析:我们要做的工作就是:
(1)建立数组,并分配内存。
(2)从键盘读数据放入数组中。
(3)对数组排序。
(4)输出排序后的数组。
我们的程序将变成
类似于右面的形式
程序
/*下面的程序是伪程序,只是为了体现程序的流程*/
void main()
{
init();
readin();
sort();
output();
}
5/16/2018
6
void print_array ( int a[M][N]) //假设已经定义了M、N
{ int m,n;
for(m=0;m<M;m++)
{ for(n=0;n<N;n++) printf("%4d",a[m][n]);
printf("\n");
} }
void read_array ( int a[M][N])
{ int m,n;
for(m=0;m<M;m++)
for(n=0;n<N;n++) scanf("%d",&a[m][n]);
}
void add_array ( int a[M][N],int b[M][N],c[M][N])
{ int m,n;
for(m=0;m<M;m++)
for(n=0;n<N;n++) c[m][n]=a[m][n]+b[m][n];
}
再如:
5/16/2018
7
void print_array ( int a[M][N]) { ... }
void main( )
{ int a[M][N], b[M][N], c[M][N];
read_array(a); read_array(b);
print_array(a); print_array(b);
add_array(a,b,c); print_array(c);
}
void read_array ( int a[M][N]) { ... }
void add_array ( int a[M][N],int b[M][N],c[M][N])
{ ... }
程序功能:求两个二维数组的和
5/16/2018
8
二、C是模块化程序设计语言
C程序
源程序2
源程序1
main( )
数据定义
源程序n
自定义函数
说明部分
执行部分

5/16/2018
9
程序员定义的函数;
C标准库中预定义的函数。
四、使用库函数应注意的几个问题:
1、函数功能
2、函数参数的数目和顺序
3、各参数的意义和类型
4、函数返回值的意义和类型
5、需要包含的头文件
三、函数的分类
5/16/2018
10