c语言函数求5 的值为,第5章函数(C语言程序设计)

《第5章函数(C语言程序设计)》由会员分享,可在线阅读,更多相关《第5章函数(C语言程序设计)(57页珍藏版)》请在人人文库网上搜索。

1、第5章功能、5.1C功能和C程序结构。使用函数的目的是实现模块化编程。C程序的基本单位是函数,而不是语句。模块化编程的概念是什么?考虑一个图书馆管理程序的实现,包括主控模块、借阅、归还、藏书和图书查询。C语言中的模块是一个函数。图书馆管理程序的C语言实现示意图,借阅模块函数()和归还模块函数()的具体实现语句,每个模块被写成一个函数,以及藏书模块函数()的具体实现。调用图书返回功能;调用库集合函数;调用图书查询功能;调用只是一个语句,函数之间的关系是通过调用来实现的。如果不调用它也没关系。模块化软件结构示意图,思考:如何用主音和被调用来解释A,B,C,I函数之间的关系,一个C语言程序由一个主函。

2、数和几个(0个用户函数)组成。C语言中的函数没有成员资格,也就是说,所有函数都是独立定义的,不能嵌套。函数通过调用来执行,这允许函数相互调用,并直接或间接地递归调用自己。主函数可以调用任何一个函数,而其他函数不能调用主函数。主动调用其他函数的函数称为主调优函数,被调用的函数称为调优函数。系统函数不需要定义,只要它们在使用时被调用。例如,printf(),scanf()是一个系统函数。用户函数需要首先定义,然后调用。如果不调用它们,它们将不会被执行。5.2函数定义和组成、存储类型数据类型函数名(形式参数表)声明变量语句的可执行语句。通常,函数名和参数的描述部分称为“函数头”,用花括号括起来的部分。

3、称为“函数”,即voidprintstar()printf(* * * * * n);示例5.1,浮动区域(浮动,浮动b)浮动;s=a*b。回报;示例5.2,存储类型为:extern或staticextern外部函数(默认),静态内部函数,默认数据类型为int:函数执行后,将得到一个没有值类型的值:void,函数名为标识符,其命名规则与变量的命名规则相同。形式参数(简称为形式参数)描述如下:数据类型形式参数1、数据类型形式参数2和声明的形式参数。函数的返回值(函数值)可以是常量、变量或表达式的返回表达式;返回(表达式);返回;也可以没有返回语句(无效类型)。当定义形式参数A和B时,假设A和B有。

4、值(实际上没有,形式上认为有),intsum(intx,inty,intz)int m;m=x y z;returnm定义参数x、y、z时,没有内部赋值,并且它被认为具有形式上的值。return是函数的逻辑结尾。可以有多个,但只能执行一个。intf(inta,intb)if(ab)return 1;elseif(a=b)返回0;elsereturn-1;intsum(intx,inty,intz),函数体:它可以是一个空函数,只写出函数的形式,首先考虑如何回调,然后实现定义体,5.3函数调用,函数名(参数表);s=总和(2,3,4);s=5*f(3,4,2);z=最大值(5,10);scanf。

5、 (%d ,),调用函数时的参数称为实际参数,简称为实际参数。实际参数和形式参数一一对应,实际参数以值printf(“x=% d”,x)的形式表示。printf(“x=% d”,最大值(5,10);形式参数以声明变量的形式表示,函数的调用过程,floatf2(inta,intb)返回;f1()调用函数语句s=f2(x,y),主音函数,被调用函数,f1(),floatf2(inta,intb),a=x;b=y、flowere rea(inta,intb)flowers。s=a*b。回报;main()floatlength,with,s;Scanf (%f,%f ,示例5.2,找到矩形区域,20,。

6、5,面积(长度,宽度);20,5,100,100,s=,100,100.00,释放函数中的变量,释放主函数中的变量,intsum(intx,inty,intz)intm;m=x y z;returnm,main()inti,j,k,s;Scanf (%d% d% d ,示例5.3)编写了一个程序来计算同时不是0的三个整数的和。,20,sum(i,j,k);0,-3,20,0,-3,17,17,sum=17,释放函数中的变量,释放主函数中的变量,intf(inta,intb)if(ab)return 1;elseif(a=b)返回0;elsereturn-1;在、c语言中,参数的求值顺序是不固定。

7、的,TC是从右向左的。例5.4写出程序运行结果,main()inti=2,p;p=f(i,I);printf(%d ,p);intf(inta,intb)if(ab)else if(a=b)return 0;3,3,f(),0,0,问题:函数的执行顺序和它们的书写顺序之间有什么关系?主音功能是以前写的吗?还是先写调好的函数?函数的书写顺序有两种:1 .首先定义,然后调用,2。首先调用,然后定义。c语言规定函数的作用域从定义的位置开始,直到源文件的末尾,书写顺序不同,函数的作用域也不同,函数先定义,然后调用:max (inta,intb) if (ab)返回;elsereturnb找出两个数的最。

8、大值。main()intx,y,z;Scanf (%d,%d ,编译时不会有问题,首先调用该函数,然后定义的表达式为:float max(flove,float b)if(ab)return。elsereturnb,main()intx,y,z;Scanf (%d,%d ,在大多数情况下无法编译,已修改:在调用函数之前,声明函数的原型floatmax (inta,intb);floatmax(int,int);float max();也可以放在主音函数中,特殊:函数类型是int,所以不需要声明它。示例5.5编写一个函数来查找整数的阶乘。/*首先调用,然后定义*/main()intn;long 。

9、fac(int);scanf(%d,long fac(intx)inti;longyif(x0)printf(data error n);elsefor(i=1,y=1;I=x;I)y=y * I;returny,main(),intn,long fac(int);scanf(%d、3、printf(%d!=%ld,n,fac(n);fac(n)、long fac(intx);inti,longy,if(x0),else,for,i=1,y=1,1,1,i=x,y=y * I;y=1*1,1,I,2,i=x,y=y * I;*2,I,3,i=x,y=y * I;*3,2,6,I,4,i=x,r。

10、eturny、6、3、3!=6,3!=6,函数调用可以嵌套,即在调用一个函数的过程中可以调用另一个函数。C语言中不允许嵌套定义,但允许嵌套调用。示例5.6为了计算组合的数量,longcmn(intm,intn)返回,main()调用z=cmn(),longfac (intx)返回、y=、输出,函数的设计原则:保持函数longfac(int)中的包尽可能简单;longcmn(int,int);printf( input two integers 3360 );scanf(%d、%d 、long fac(intx)inti;longy对于(i=1,y=1;I=x;I)y=y * I;returny,longcmn(intm,intn)long fc;fc=fac(m);fc=fc/fac(n);fc=fc/fac(m-n);returnfc,intm,n;long fac(int);longcmn(int,int);printf( input two integers 3360 );intputtwuintegers:scanf(%d,%d ,3,3,2,2,if(m。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值