1 / 48
文档名称:

chap9 函数 c语言.ppt

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

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

分享

预览

chap9 函数 c语言.ppt

上传人:mh900965 2018/1/7 文件大小:588 KB

下载得到文件列表

chap9 函数 c语言.ppt

相关文档

文档介绍

文档介绍:第九章函数
函数的组织
递归函数
变量与函数
宏定义
编译预处理
函数的组织

scanf( ) printf( ) getchar() putchar() sqrt( )
2. 方便要反复使用的程序段
fact( )
3. 易于实现编程的模块化
例: 学生成绩档案管理软件
┌─────┬─┴──┬────┐
成绩输入成绩修改成绩统计成绩打印
函数的组织
#include<>
void main()
{ int i,n;
printf(" \n");
for ( ; ; ) {
printf("\n\n 请输入功能号:");
scanf("%d",&in);
if (in= =5) break;
switch(in) {
case 1: input( ); break;
case 2: modify( ); break;
case 3: count( ); break;
case 4: output( ); break;
}
}
}
函数的组织
void input( ) /* .成绩输入*/
{ ...............}
void modify( ) /* 成绩修改*/
{ ...............}
四个模块
void count( ) /* 成绩统计*/
{ ...............}
void output( ) /* 成绩打印*/
{ ...............}
结构化程序设计方法
结构化程序设计方法解决复杂的问题
大问题分解成若干小问题,小问题再进一步分解成若干更小的问题。
用main()解决整个问题,它调用解决小问题的函数;
这些函数又进一步调用解决更小问题的函数,形成函数的嵌套调用。
一、结构化程序设计方法
main( )
函数1
函数2

函数m
函数11
函数12
函数m1
函数mp
……

要求:实现一个常用圆形体体积计算器,输入1、2、3,将分别计算球体、圆柱体、圆锥体的体积,并输入计算所需相应参数(半径、高)。
分析:
在键盘上输入1、2、3选择计算3种体积,规定非1~3的输入将结束计算。
设立单独的函数计算不同的体积。
设计一个控制函数cal(),经它辨别不同形状后再调用计算球体、圆柱体、圆锥体体积的函数。
【例9-1】圆形体体积计算器
分解规模较大的问题,得3层结构、5个函数
有助于降低程序的构思、编写及上机调试等过程的复杂度,也提高了程序的可读性
【例9-1】
main( )
cal( )
vol_ball ( )
vol_cylind ( )
vol_cone ( )
#include <>
#include <>
#define PI
void cal ( int sel ) ; // 函数声明
void main()
{
int sel ;
while( 1 ){ //永久循环,结束靠循环体中break 语句 printf(" 1-计算球体体积\n");
printf(" 2-计算圆柱体积\n");
printf(" 3-计算圆锥体积\n");
printf(" 其他-退出程序运行\n");
printf(“请输入计算命令:”); // 1: 球体 2: 圆柱 3:圆锥
scanf("%d",&sel);
if (sel<1 || sel>3) break; // 输入非1~3,结束循环
else cal (sel ) ; // 输入1~3,调用cal()
}
}
//函数Cal()
void cal ( int sel )
{
double vol_ball(void ) ; // 函数声明
double vol_cylind(void ) ; // 函数声明
double vol_cone(void ) ; // 函数声明
switch (sel) {
case 1: // 计算球体积
printf(“Ball: %.2f\n", vol_ball() );
break;
case 2: // 计算圆柱体积
printf(“Cylinder: %.2f\n", vol_cylind() );
break;
case 3: // 计算圆锥体积
printf(“Cone: %.2f\n", vol_cone() );
break;
}
}
// 计算球体体积 V=4/3*PI*r*r*r
double vol_ball( )
{
d