如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第7章函数内容提要函数的分类(用户使用的角度)1、有参函数(1)有函数值(2)无函数值2、无参函数(1)有函数值(2)无函数值无参函数的定义形式类型标识符函数名(void){函数体}有参函数的定义编写以下程序:其中m>=k>0计算组合数:/*程序的功能:计算组合数*/#include<stdio.h>doubleFact(intn);//函数原型声明intmain(void){intm,k;doubleresult;scanf("%d,%d",&m,&k);result=Fact(m)/(Fact(k)*Fact(m-k));printf("result=%.0f\n",result);return0;}doubleFact(intn)//定义函数Fact{inti;doublefac=1;for(i=1;i<=n;i++){fac=fac*i;}returnfac;}C程序的几点说明:⑴一个源程序文件由一个或多个函数组成。⑵C程序的执行从main函数开始,调用其它函数后流程回到main函数,在main函数中结束整个程序的运行。main函数是由系统定义的。⑶所有函数都是平行的,即在定义函数时是互相独立的,一个函数并不从属于另一个函数。函数间可以互相调用,但不能调用main函数。一个函数只有被调用,才有机会被执行。函数参数:形参(形式参数):在定义函数时,函数名后面括号中的变量名实参(实际参数):在主调函数中调用一个函数,函数名后面括号中的参数(或表达式)例函数的调用函数调用总结函数调用的形式#include<stdio.h>intmax(intx,inty){intz;if(x>y){z=x;}else{z=y;}return(z);}intmain(void){inta=45,b=78,c=99,d,e;d=max(a,b);printf("max1=%d\n",d);printf("max2=%d\n",max(a,b));e=c-max(a,b);printf("e=%d\n",e);printf("max3=%d\n",max(max(a,b),c));return0;}函数原型(prototype)#include<stdio.h>intAverage(intx,inty){intresult;result=(x+y)/2;returnresult;}intmain(void){inta=12;intb=24;intave;ave=Average(a,b);printf("Averageof%dand%dis%d.\n",a,b,ave);return0;}#include<stdio.h>intAverage(intx,inty);/*声明Average()函数*/intmain(void){inta=12;intb=24;intave;ave=Average(a,b);printf("Averageof%dand%dis%d.\n",a,b,ave);}intAverage(intx,inty){intresult;result=(x+y)/2;returnresult;}main(){……a();}函数的嵌套调用举例函数的递归调用函数的递归调用举例函数的递归调用举例