- 1、本文档共54页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
北京科技大学 计算机系 第5章 函数 5.1 函数概述 在C程序设计中,函数是具有独立功能的程序模块,一个C程序往往由一个或多个函数组成,这些函数相当于其它高级语言的子程序。对程序进行模块化,不仅提高程序设计的易读性和可维护性,而且还可以把经常用到的一些运算和操作定义成通用函数,供随时调用,大大地减轻了程序员编写代码的工作量,提高了编程效率。 5.1 函数概述 在C语言中,可从不同的角度对函数分类: 1)从函数定义的角度看,函数可分为库函数和用户定义函数两种。 库函数:由C系统提供,用户无须定义,也不必在程序中作类型说明,只需在程序前包含有该函数原型的头文件即可在程序中直接调用。如printf、scanf、getchar、putchar、gets、puts等函数均属此类。 用户定义函数:用户根据需要编写的函数。对于用户定义函数,不仅要在程序中定义函数本身,而且在主调函数模块中还必须对该被调函数进行类型说明,然后才能使用。 5.1 函数概述 2)从主调函数和被调函数之间数据传送的角度看,函数分为无参函数和有参函数两种。 无参函数:函数定义、函数说明及函数调用时均不带参数,主调函数和被调函数之间不进行参数传送。 有参函数:在函数定义及函数说明时都有参数,称为形式参数(简称为形参)。在函数调用时也必须给出参数,称为实际参数(简称为实参)。进行函数调用时,主调函数将把实参的值传送给形参,供被调函数使用。 5.1 函数概述 3)C语言的函数兼有其它语言中的函数和过程两种功能,从这个角度看,又可把函数分为有返回值函数和无返回值函数两种。 有返回值函数:此类函数被调用执行完后将向调用者返回一个执行结果,称为函数返回值。 无返回值函数:此类函数执行完成后不向调用者返回函数值。用户在定义此类函数时可指定它为“空类型”, 空类型的说明符为“void”。 5.2 函数的定义 1.无参函数的定义形式: “类型标识符”指明函数的类型,是函数返回值的类型,“函数名”是由用户定义的标识符,函数名后有一个空括号,其中无参数,但括号不可少。花括号“{}”中的内容称为函数体。 5.2 函数的定义 【例5.1】定义一个函数,求出两个数之和。 #include “stdio.h” int sum() { int a,b,c; scanf(%d%d,a,b); c=a+b; return(c); } void main() { int a; a=sum(); printf(%d\n,a);} 5.2 函数的定义 在很多情况下不要求无参函数有返回值,此时,函数类型可以定义为void型。 【例5.2】定义一个函数,用于输出提示信息。 #include stdio.h void print() { printf(************\n); printf(* C program *\n); printf(************\n); } void main() { print();} 5.2 函数的定义 2.有参函数的定义 定义有参函数的一般形式: 5.2 函数的定义 【例5.3】定义一个函数,求出两个数中的大数。 #include stdio.h int max(int x, int y) { if (xy) return x; else return y; } void main() { int a,b,c; scanf(%d%d,a,b); c=max(a,b); /*调用max函数*/ printf(max=%d\n,c);} 5.2 函数的定义 3.空函数 在编写程序的开始阶段,可将计划准备扩充功能的地方写上一个空函数。空函数没有被编写,只是让其先占用一个位置,以后用一个编好的函数代替它。空函数的一般定义形式: 例如: void shell() { } 5.3 函数的调用与返回值 5.3.1 函数的调用 5.3.2 被调函数的声明 5.3.3 函数的返回值 5.3.1 函数的调用 函数调用的一般形式为: “实际参数表列”中的参数可以是常数、变量、表达式或其它构造类型数据,各实参之间用逗号隔开。 5.3.1 函数的调用 在C语言中,可以用以下三种方式调用函数: 1.函数表达式 函数作为表达式中的一项出现在表达式中,函数返回值参与表达式的运算。这种调用方式要求函数有返回值。例如: c=6*min(a,b); 【例5.4】定义函数,求解2
您可能关注的文档
- C C++程序设计 第2版 陈卫卫 C第1章 -2新.ppt
- C C++程序设计 第2版 陈卫卫 C第1章 -3新.ppt
- C C++程序设计 第2版 陈卫卫 C第2章 -1新.ppt
- C C++程序设计 第2版 陈卫卫 C第2章 -2新.ppt
- C C++程序设计 第2版 陈卫卫 C第3章 -1新.ppt
- C C++程序设计 第2版 陈卫卫 C第3章 -2新.ppt
- C C++程序设计 第2版 陈卫卫 C第4章 -1新.ppt
- C C++程序设计 第2版 陈卫卫 C第4章 -3新.ppt
- C C++程序设计 第2版 陈卫卫 C第6章 -1新.ppt
- C C++程序设计 第2版 陈卫卫 C第6章 -2新.ppt
- 半导体材料性能提升技术突破与应用案例分析报告.docx
- 半导体设备国产化政策支持下的关键技术突破与应用前景报告.docx
- 剧本杀市场2025年区域扩张策略研究报告.docx
- 剧本杀行业2025人才培训体系构建中的市场需求与供给分析.docx
- 剧本杀行业2025年人才培训行业人才培养模式创新与探索.docx
- 剧本杀行业2025年内容创作人才需求报告.docx
- 剧本杀行业2025年区域市场区域剧本市场消费者满意度与市场竞争力研究报告.docx
- 剧本杀市场2025年区域竞争态势下的区域合作策略分析报告.docx
- 剧本杀行业2025人才培训与行业人才培养模式创新.docx
- 剧本杀行业剧本创作人才心理素质培养报告.docx
最近下载
- 哪些因素会导致患上痛风的风险增加?.pptx VIP
- FlexSim:FlexSim二次开发与编程接口介绍.Tex.header.docx VIP
- 2024年新人教版9年级上册化学全册课件(新版教材).pptx
- 中国人身保险从业资格A5《寿险公司经营与管理》真题卷五.docx VIP
- 2025贵州毕节七星关区实验学校教师“跨校竞聘”60人笔试备考试题及答案解析.docx VIP
- 周围性面瘫患者的面神经功能训练专家共识.docx VIP
- 2025档案管理考试题及答案.doc VIP
- 2025年日历表格(打印版).xlsx VIP
- 如何做好电销人员的新人培训 .pdf VIP
- FlexSim:FlexSim模型验证与确认技术.Tex.header.docx VIP
文档评论(0)