- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
函数
学习目标
掌握如何定义函数及调用函数
了解内存四区的概念及栈区、堆区的工作原理
掌握外部函数与内部函数的概念及其区别
掌握局部变量与全局变量的概念及其屏蔽规则
通过前面几章的学习,相信大家会编写一些简单的C语言程序了,但是,随着程序功能的增多,main()函数中的代码也会越来越多,导致main()函数中的代码繁杂、可读性太差,维护也变的很困难。,可以将功能相同的代码提取出来,将这些代码模块化,在程序需要的时候直接调用。这就好比组装机器,需要什么直接装上就可以了。C语言的函数类似于机器的组装部件,它用于实现某些特定的功能,本章将针对函数的相关知识进行详细讲解。
在C语言中,定义一个函数的具体语法格式如下:
返回值类型 函数名([[参数类型 参数名1],[参数类型 参数名2],……,[参数类型 参数n]])
{
执行语句
………
return 返回值;
}
为了让读者更好地理解函数的各个组成部分,接下来对上述语法格式进行简要说明,具体如下:
返回值类型:用于限定函数返回值的数据类型;
函数名:表示函数的名称,该名称可以根据标识符命名规范来定义;
参数类型:用于限定调用方法时传入参数的数据类型;
参数名:用于接收调用方法时传入的数据;
return关键字:用于结束函数,并返回函数指定类型的值;
返回值:被return语句返回的值,该值会返回给调用者。如果函数没有返回值,则返回值类型要声明为void,此时,函数体中的return语句可以省略不写。
在上面的语法格式中,1],[参数类型 参数名2],…,[参数类型 参数n]]”被称作参数列表,它用于描述函数在被调用时需要接收的参数。如果函数不需要接收任何参数,则参数列表为空,这样的函数被称为无参函数。相反地,参数列表不为空的函数就是
void func()
{
printf(这是我的第一个函数!\n);
}
上述示例代码中,func()函数就是一个无参函数,参数列表为空。要想执行这个函数,需要在main()函数中调用它,如
#include stdio.h
void func()
{
printf(这是我的第一个函数!\n);
}
void main()
{
func();
}
运行结果如图4-1所示。
运行结果
从图4-1中可以看出,func()函数被成功调用了。在程序中,第2行代码定义了一个无参函数func(),第4行代码将字符串打印到控制台,第8行代码在main()函数中调用该无参函数。
下面通过一张流程图来说明例子中函数的调用过程,具体如图
主函数中调用子函数func()的流程图
从图4-2可以看出程序是由上至下按顺序执行的,程序首先从主函数开始执行,遇到“func();”语句后跳转到func()函数,执行func()函数体中的代码。执行完func()函数后返回到主函数原来的调用点(即“func()”语句),接着执行调用点后面的语句,如果后面没有其他语句,则主函数执行结束。
2、有参函数
与无参函数相比,有参函数在函数定义时,需要在函数名称后面的括号中填写参数。所谓的参数是一个变量,用于接收调用者传入的数据。定义有参函数的示例代码如下:
void func(int x,int y)
{
int sum=x+y;
printf(x+y=%d\n,sum);
}
上述代码中,定义了一个实现加法运算的函数func(),并指定了两个int类型的参数x和yfunc(int x,int y)函数,如#include stdio.h
void func(int x, int y)
{
int sum = x + y;
printf(x+y=%d\n, sum);
}
void main()
{
func(3, 5);
}
运行结果如图4-3所示。
运行结果
在例4-2中,第2~6行代码定义了一个函数func(),该函数包含两个参数,分别是x和y。当在main()函数中调用func()函数时,传入函数中的参数是3和5,即在func(int x,int y)中执行了5的操作通过一张图例来的调用过程,具体如图
主函数中调用子函数func()的流程图
从图4-4可以看出,有参函数和无参函数的调用过程类似,但在调用有参函数时,需要传入实参,并将传入的实参赋值给形参,然后在函数体中执行3+5的
通过前面的讲解可知,函数的返回值是指函数被调用之后,返回给调用者的值。函数的返回值具体语法格式如下:
return 表达式;
对于返回值类型为void的函数,可以直接在return语句后面加分号,具体语法格式如下:
return;
为了让读者更好的学习如何使用return语句,接下来对例4-2进行改写,使func(int x, int y)函数能够返回求和计算的结果,修改后的
您可能关注的文档
最近下载
- 02S701 砖砌化粪池图集.pdf VIP
- 文献检索与科技论文写作 课件全套 第1--9章 绪论、科技文献检索基础知识---科技论文的投稿.pdf VIP
- 中国数字经济现状及未来发展.docx VIP
- 常用起重索具、吊具计算.doc VIP
- 桥头跳车防治技术.pptx VIP
- 厨师安全教育培训考试题及答案.docx VIP
- 12.《总也倒不了的老屋》课件(共12张PPT).pptx VIP
- 施工安全隐患排查治理方案.docx VIP
- 全套课件-科技文献检索与论文写作..pptx VIP
- Python程序设计基础 课件全套 傅彬 项目1--10 Python语言及编程环境---正则表达式.pptx
文档评论(0)