- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DEVC基础教程之函数.
DEV C++教程
第六章 函数
第22课:函数㈠
前面我们曾经学习了程序设计中的三种基本控制结构(顺序、分支、循环)。用它们可以组成任何程序。但在应用中,还经常用到子程序结构。
通常,在程序设计中,我们会发现一些程序段在程序的不同地方反复出现,此时可以将这些程序段作为相对独立的整体,用一个标识符给它起一个名字,凡是程序中出现该程序段的地方,只要简单地写上其标识符即可。这样的程序段,我们称之为子程序。
子程序的使用不仅缩短了程序,节省了内存空间及减少了程序的编译时间,而且有利于结构化程序设计。因为一个复杂的问题总可将其分解成若干个子问题来解决,如果子问题依然很复杂,还可以将它继续分解,直到每个子问题都是一个具有独立任务的模块。这样编制的程序结构清晰,逻辑关系明确,无论是编写、阅读、调试还是修改,都会带来极大的好处。
在一个程序中可以只有主程序而没有子程序(本章以前都是如此),但不能没有主程序,也就是说不能单独执行子程序。
在此之前,我们曾经介绍并使用了C++提供的各种标准函数,如abs(),sqrt()等等,这些系统提供的函数为我们编写程序提供了很大的方便。比如:求sin(1)+ sin(2)+...+sin(100)的值。但这些函数只是常用的基本函数,编程时经常需要自定义一些函数。
函数的概念
函数是一种对应关系的描述,即确定了函数自变量到函数值之间的对应关系。与函数相关的概念如下。
⑴自变量:函数计算时使用的数据,自变量的取值范围称为函数的定义域。在程序设计中,函数的自变量称为参数,定义域由参数的类型决定。
⑵函数值:函数的计算结果,它的取值范围称为值域。在程序设计中函数值称为函数返回值,返回值的类型称为函数类型。
⑶表达式:数学中函数的计算过程由表达式来说明,在程序设计中,一个函数的处理过程往往比一个表达式所描述的内容要复杂得多,需要一段程序来描述所有的操作,这就是C++语言一个函数的函数体。
函数的分类
分为系统函数和用户定义函数(也叫自定义函数)
系统函数
系统函数取出由C++语言系统提供的函数(也称库函数)。这些函数可以从语言系统的手册上查阅其功能和使用方法,用户不需自己再进行定义说明,就直接调用。例如我们已经学过的标准函数abs、sqrt、max、min等。
例1:编写求n!的函数。
参考程序:
#includeiostream
using namespace std;
int fact(int n) //fact为函数名;括号里面的为形式参数,简称为形参。
{
int i,t=1;
if (n0)
{
coutError!endl;
return 0;
}
for (i=2;i=n;i++)
t=t*i;
return t;
}
int main()
{
int m,x;
coutInput m:;
cinm;
x=fact(m); //函数调用,返回值赋给变量x。
coutm!=xendl;
return 0;
}
三、函数的定义
1.函数定义的语法形式
数据类型 函数名(形式参数表) //函数的首部
{ //函数体;
说明部分;
语句部分;
}
关于函数的定义有如下说明:
1、函数的数据类型是函数的返回值类型(若数据类型为 void ,则无返回值)。
2、函数名是标识符,一个程序中除了主函数名必须为main外,其余函数的名字按照标识符的取名规则可以任意选取,最好取有助于记忆的名字。
3、形式参数(简称形参)表可以是空的(即无参函数);也可以有多个形参,形参间用逗号隔开,不管有无参数,函数名后的圆括号都必须有。形参必须有类型说明,形参可以是变量名、数组名或指针名,它的作用是实现主调函数与被调函数之间的关系,通常将函数所处理的数据、影响函数功能的因素或者函数处理的结果作为形参。在被调用函数中的参数被称为形参。
函数中最外层一对花括号“{ }”括起来的若干个说明语句和执行语句组成了一个函数的函数体。由函数体内的语句决定该函数功能。函数体实际上是一个复合语句,它可以没有任何类型说明,而只有语句,也可以两者都没有,即空函数。
函数不允许嵌套定义。在一个函数内定义另一个函数是非法的。但是允许嵌套使用。
函数在没有被调用的时候是静止的,此时的形参只是一个符号,它标志着在形参出现的位置应该有一个什么类型的数据。函数在被调用时才执行,也就是在被调用时才由主调函数将实际参数(简称实参)值赋予形参。这与数学中的函数概念相似,如数学函数:
f(x)= x 2+x+1
这样的函数只有当自变量被赋值以后,才能计算出函数的值。
函数的调用
函数的一般调用形式为:
函数名(实在参数1,实在参数2,…)
若实在参数的个
您可能关注的文档
最近下载
- 九级物理_第十三章内能与热机.ppt VIP
- 2024年教育综合333考研统考真题及解析.pdf VIP
- 综合与实践 数字编码 教案 2025人教版数学三年级上册.doc VIP
- 灵宝道情与道教文化.pdf VIP
- 企业财务共享中心建设以山西焦煤集团为例.docx VIP
- 2025至2030中国军事上的人工智能行业项目调研及市场前景预测评估报告.docx
- 2025考研教育学333真题及参考答案.docx VIP
- 关于绑架的小故事-绑架关起来的故事.docx VIP
- 2025年人教版三年级数学上册综合实践《数字编码》教案.pdf VIP
- 2.7《运动的快慢》(课件)四年级上册科学苏教版.pptx VIP
文档评论(0)