1 / 42
文档名称:

C语言程序设计函数程序设计PPT课件.pptx

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

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

分享

预览

C语言程序设计函数程序设计PPT课件.pptx

上传人:wz_198613 2021/8/24 文件大小:388 KB

下载得到文件列表

C语言程序设计函数程序设计PPT课件.pptx

文档介绍

文档介绍:C语言程序设计(第3版)张磊编著 清华大学出版社
第6章 数组程序设计
函数概述
自定义函数示例
函数定义及调用
函数嵌套和递归函数
数组作为函数的参数
函数应用举例
第1页/共42页
C语言程序设计(第3版)张磊编著 清华大学出版社
函数概述
C语言程序的特点:函数化结构
函数分类:系统函数、用户函数
系统函数:printf()、scanf()、sqrt()等
用户函数:在程序中编写的函数,又称自定义函数。
用户函数的特例:main()函数
如果在程序中经常需要某种处理,就可以编写一个函数,在需要这种处理时,就调用该函数。
示例
计算a!+b!+c!
第2页/共42页
C语言程序设计(第3版)张磊编著 清华大学出版社
自定义函数示例
例6-1编程计算表达式a!+b!+c!的值。
程序结构只有main()函数的阶乘程序
#include<>
void main()
{ int a,b,c,i;
long t,sum;
printf("Input a,b,c:");
scanf("%d,%d,%d",&a,&b,&c);
for(t=1,i=1;i<=a;i++)
t=t*i;
sum=t;
for(t=1,i=1;i<=b;i++)
t=t*i;
sum+=t;
for(t=1,i=1;i<=c;i++)
t=t*i;
sum+=t;
printf("SUM=%ld\n",sum);
}
使用自定义函数的阶乘程序
#include <>
void main()
{
long f(int n);
int a,b,c,i;
printf("Input a,b,c:");
scanf("%d,%d,%d",&a,&b,&c);
printf("SUM=%ld\n",f(a)+f(b)+f(c));
}
long f(int n) /* 计算阶乘的函数 */
{
long t;
int i;
for(t=1,i=1;i<=n;i++)
t*=i;
return(t);
}
求n!
函数
调用函数f()
求c!
第3页/共42页
C语言程序设计(第3版)张磊编著 清华大学出版社
函数的定义及调用
函数的定义
函数值和return命令
函数调用
第4页/共42页
C语言程序设计(第3版)张磊编著 清华大学出版社

函数定义的一般格式
函数类型  函数名(形式参数表)
{
函数体
}
形式参数表的格式
数据类型 变量1,数据类型 变量2,…,数据类型 变量n
函数的值的类型
第5页/共42页
C语言程序设计(第3版)张磊编著 清华大学出版社
例6-2 定义连续输出50个*字符的函数。
void p_star50(void)
{
int i;
for(i=1;i<=50;i++)
putchar('*');
}

无形参
有形参
例6-3 定义连续输出n个*字符的函数。
void p_star(int n)
{
int i;
for(i=1;i<=n;i++)
putchar('*');
}
第6页/共42页
C语言程序设计(第3版)张磊编著 清华大学出版社
函数值和return命令
函数值是函数执行后带回的一个结果
函数值通过函数体中return命令获得。
return一般格式
return(表达式)
或:
return 表达式
第7页/共42页
C语言程序设计(第3版)张磊编著 清华大学出版社
函数值和return命令
例6-4 定义求两个实数的最大数函数max()。
float max(float x,float y)
{
float m;
m=x>y?x:y;
return(m);
}
float max(float x,float y)
{
if(x>y)
return x;
else
return y;
}
第8页/共42页
C语言程序设计(第3版)张磊编著 清华大学出版社
函数值和return命令
例6-5
int sum(int n)
{
int s,i;
for(s=0,i=1;i<=n;i++)
s+=i;
return(s);
}
第9页/共42页
C语言程序设计(第3版)张磊编著 清华大学出