《C语言程序设计》课程电子教案(PPT课件讲稿)第六章 函数

六、函数 教学目标 函数的概念、定义、调用和返回 带自定义函数的程序设计 递推算法 递归思想及算法实现 函数的参数传递方式 C语言程序设计
C语言程序设计 1 六、函数 教学目标: 函数的概念、定义、调用和返回 带自定义函数的程序设计 递推算法 递归思想及算法实现 函数的参数传递方式

六、函数 61函数概论 任务61从键盘输入一个正整数a编一个程序 判断a是否为素数。 可以设计一个函数 Jint check Prime (int n), 让该函数负责检查n是否为素数,如果是,返 回1,否则返回0 参考程序:程序61cpp C语言程序设计
C语言程序设计 2 六、函数 6.1 函数概论 任务6.1 从键盘输入一个正整数a,编一个程序 判断a是否为素数。 ◼ 可以设计一个函数int checkPrime(int n), ◼ 让该函数负责检查n是否为素数,如果是,返 回1,否则返回0. ◼ 参考程序:程序6_1.cpp

#include iostream> //预编译命令 #include using namespace std int checkPrime (int nD //函数声明在前 int main //主函数 //主函数开始 int a. cout<<"请输入一个正整数a 说明的时候就要写清楚这个函数的数据类型是 什么,自变量有几个,都是什么数据类型。如 任务6.1的函数 int ckeckPrim(int n 说明自变量只有一个,是整型,函数的数值也 是整型。函数的取值称为函数的返回值。这里 用1表示真,0表示假。 C语言程序设计
C语言程序设计 3 6.1 函数概论 6.1.1 函数的说明 ◼ 在全局上,自定义函数应该在主函数之前有一 个说明,目的是告诉系统在程序中要用到一个 自定义函数,被主函数直接或间接调用。 ◼ 说明的时候就要写清楚这个函数的数据类型是 什么,自变量有几个,都是什么数据类型。如 任务6.1的函数 ◼ int ckeckPrim(int n); ◼ 说明自变量只有一个,是整型,函数的数值也 是整型。函数的取值称为函数的返回值。这里 用1表示真,0表示假

612函数的定义方法 类型标志符:表明函 数返回值的类型。如果/函数名:命名规 由类型标识符、 省略,系统则认为是 则同变量名。用于函数名和形参列 int型的。 调用该函数。 表组成的部分称 为函数的首部。 类型标志符函数名(形参列表 形参列表:定义要传值 的局部变量,保存调用 该函数时的输入信息。 参数定义 形参多于一个时,用逗 还句组 号分隔。没有形参时, 括号不能省略。形参列 函数体:该函数功能具体的实现过程。通表的方式如下 常包括若干变量的定义和若干语句。函数 体由一对大括号和其中包括的语句组构成。 类型标志符参数名1, 参数定义指不传值的局部变量定义,大括 类型标志符参数名2, 号内可为空
C语言程序设计 4 6.1.2 函数的定义方法 类型标志符 函数名(形参列表 ) { 参数定义 语句组 } 类型标志符:表明函 数返回值的类型。如果 省略,系统则认为是 int型的。 函数名:命名规 则同变量名。用于 调用该函数。 形参列表:定义要传值 的局部变量,保存调用 该函数时的输入信息。 形参多于一个时,用逗 号分隔。没有形参时, 括号不能省略。形参列 表的方式如下: 类型标志符 参数名1, 类型标志符 参数名2, …… 函数体:该函数功能具体的实现过程。通 常包括若干变量的定义和若干语句。函数 体由一对大括号和其中包括的语句组构成。 参数定义指不传值的局部变量定义,大括 号内可为空 由类型标识符、 函数名和形参列 表组成的部分称 为函数的首部

61.2函数的定义:例 函数名:为 Maxint。 形参列表:有2个形参,分别 以后就使用这个名字调 是in型变量x和int型变量y。 用该函数 它们用于保存调用该函数时传 递进来的输入信息。 类型标志符:此处为 int,表明该函数的返 int MaxInt(int x, int y) 回值类型是int型的。 int Z 题数体?实现该函数 的功能。对由调用者传 z=x>y? X: yi 递进来保存在形参中的 数据进行有关处理后, return (z) 将结果通过 return语 句返回给调用者。 C语言程序设计
C语言程序设计 5 6.1.2 函数的定义:例 int MaxInt(int x, int y) { int z; z = x > y ? x : y; return(z); } 类型标志符:此处为 int,表明该函数的返 回值类型是int型的。 函数名:为MaxInt。 以后就使用这个名字调 用该函数。 形参列表:有2个形参,分别 是int型变量x和int型变量y。 它们用于保存调用该函数时传 递进来的输入信息。 函数体:实现该函数 的功能。对由调用者传 递进来保存在形参中的 数据进行有关处理后, 将结果通过return语 句返回给调用者

613函数的返回值 ■函数一般是由主函数调用(当然也可由别的函数或 这个函数自已来调用),调用函数的目的是让它计 算某一函数的值,这个值通过 return语句返回给调 用它的函数,格式为 lint checkPrime(intn) return(表达式) 或 int i return表达式 for(i=2;i*<=n;i++) 如果不需返回数值,则用 if(n%i==0) return ■有调用就要有返回,函 return 0 注意养成这个好习惯。 return 1 C语言程
C语言程序设计 6 6.1.3 函数的返回值 ◼ 函数一般是由主函数调用(当然也可由别的函数或 这个函数自已来调用),调用函数的目的是让它计 算某一函数的值,这个值通过return语句返回给调 用它的函数,格式为 return(表达式); 或 return 表达式; 如果不需返回数值,则用 return; ◼ 有调用就要有返回,函数中一定要有return出现, 注意养成这个好习惯

6.1.4函数的调用 函数一经定义,以其名为标记的一片内 存地址就被该函数所占有。在这片地址 中存储着相关的一系列指令。因在程 序中出现该函数名,就意味着程序转到 这一片内存地址,调用这个函数,执行 了相关的一系列程序指令。 C语言程序设计
C语言程序设计 7 6.1.4 函数的调用 ◼ 函数一经定义,以其名为标记的一片内 存地址就被该函数所占有。在这片地址 中存储着相关的一系列指令。因此在程 序中出现该函数名,就意味着程序转到 这一片内存地址,调用这个函数,执行 了相关的一系列程序指令

日 int main //主函数 //主函数开始 int a: cout>a if(checkPrime(a)) cout<a<"是一个素数。"<endl else cout<<a"不是一个素数。"<endl return o C语言程序设计
C语言程序设计 8 6.1.4 函数的调用 函数的调用方式 (1)对于有返回值的函数,可视其为表达 式,可放在任何可放的地方。比如任务 6.1中的checkPrime函数就放在if语句的 表达式中。 (2)对于没有返回值的函数,一般在程序 中作为独立一条语句出现,不以表达式 形式出现。 如return(a);

6.1.4函数的调用 冷函数调用的一般形式为:函数名(实参列表 如果是无参函数,则没有实参列表,但是括号不能省略; 如果实参多于一个,则用逗号分隔。 调用一个函数时,一定要保证实参和形参的一致,即在参 数数量、类型和顺序上都要一致。 调用一个函数时,要发生由实参到形参的“单向值传递” 的参数传递过程。 ? 为什么用函数名就因为函数名中包含了该函数的入 可以调用一个函数 口地址信息,即函数名是一个指 向函数入口地址的常量指针。 C语言程序设计
C语言程序设计 9 ❖函数调用的一般形式为:函数名(实参列表); 如果是无参函数,则没有实参列表,但是括号不能省略; 如果实参多于一个,则用逗号分隔。 6.1.4 函数的调用 调用一个函数时,一定要保证实参和形参的一致,即在参 数数量、类型和顺序上都要一致。 调用一个函数时,要发生由实参到形参的“单向值传递” 的参数传递过程。 ? 为什么用函数名就 可以调用一个函数 因为函数名中包含了该函数的入 口地址信息,即函数名是一个指 向函数入口地址的常量指针

6.1.5函数的参数 今函数参数的作用 用于在调用某个函数时由调用者向该被调用函数传递信息 对函数的进一步理解 可以把一个函数理解为一个“黑箱”,使用者使用该“黑箱” 时,提供了加工的信息输入到“黑箱”中,该“黑箱”按照 预先设计的功能对接收到的这些符合预定要求的输入信息进 行加工,然后返回输出信息给使用者。 可见,要想形成一 个函数,必须要设 计好它可以接收什 输入 输出么样的输入信息 信息 函数 信息又输出什么样的信 息,即必须设计好 函数的接口。 C语言程序设计
C语言程序设计 10 ❖函数参数的作用 用于在调用某个函数时由调用者向该被调用函数传递信息。 6.1.5 函数的参数 ❖对函数的进一步理解 可以把一个函数理解为一个“黑箱”,使用者使用该“黑箱” 时,提供了加工的信息输入到“黑箱”中,该“黑箱”按照 预先设计的功能对接收到的这些符合预定要求的输入信息进 行加工,然后返回输出信息给使用者。 函数 输入 信息 输出 信息 可见,要想形成一 个函数,必须要设 计好它可以接收什 么样的输入信息, 又输出什么样的信 息,即必须设计好 函数的接口
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- “互联网+”与“+互联网”(PPT讲稿).pptx
- 《Computer Networking:A Top Down Approach》英文教材教学资源(PPT课件讲稿,6th edition)Chapter 6 无线和移动网络 Wireless and Mobile Networks.ppt
- 面向服务的业务流程管理(PPT讲稿)Introduction to Business Process Management(BPM).pptx
- 《图像处理与计算机视觉 Image Processing and Computer Vision》课程教学资源(PPT课件讲稿)Chapter 04 Feature extraction and tracking.pptx
- 香港科技大学:Advanced Topics in Next Generation Wireless Networks.ppt
- 《Java语言程序设计》课程教学资源(PPT课件讲稿)第三章 Java面向对象程序设计.ppt
- 《数据结构》课程教学资源(PPT课件讲稿)第六章 树与二叉树(6.1-6.3).ppt
- 四川大学:《Linux操作系统》课程教学资源(PPT课件讲稿)第2章 Linux操作系统管理基础.ppt
- 厦门大学:《数据库系统原理》课程教学资源(PPT课件讲稿,2016版)第五章 数据库完整性.ppt
- 《计算机视觉》课程教学资源(PPT课件讲稿)边缘和线特征提取.ppt
- 中国科学技术大学:《计算机体系结构》课程教学资源(PPT课件讲稿)Chapter 01 量化设计与分析基础(主讲:周学海).ppt
- Peer-to-Peer Networks:Distributed Algorithms for P2P Distributed Hash Tables.ppt
- 山西农业大学:大数据技术原理与应用(PPT讲稿)Development and application of bigdata technology.ppt
- 香港理工大学:数据仓库和数据挖掘(PPT讲稿)Data Warehousing & Data Mining.ppt
- 《信息系统与数据库技术》课程教学资源(PPT课件讲稿)第4章 T-SQL与可编程对象.ppt
- 《计算机网络》课程教学资源(PPT课件讲稿)第三章 数据链路层.ppt
- 北京航空航天大学:《数据挖掘——概念和技术(Data Mining - Concepts and Techniques)》课程教学资源(PPT课件讲稿)Chapter 02 Getting to Know Your Data.ppt
- 《Java程序开发》课程教学资源(PPT课件讲稿)第11章 Struts2框架技术.ppt
- Software Reliability & Testing(PPT讲稿)Overview of Software Reliability Engineering.ppt
- 香港浸会大学:《Data Communications and Networking》课程教学资源(PPT讲稿)Chapter 9 High Speed LANs and Wireless LANs.ppt
- 南京大学:可信软件(PPT讲稿)认识、度量与评估.ppt
- 电子工业出版社:《计算机网络》课程教学资源(第五版,PPT课件讲稿)第二章 物理层.ppt
- 中国科学技术大学:《嵌入式系统设计》课程教学资源(PPT课件讲稿)第2章 ARM微处理器概述与编程模型(王行甫).ppt
- 厦门大学:《大数据技术原理与应用》课程教学资源(PPT课件讲稿,2017)第9章 Spark.ppt
- 南京大学:《数据结构 Data Structures》课程教学资源(PPT课件讲稿)第九章 排序.ppt
- PARALLELISM IN HASKELL(Kathleen Fisher).pptx
- 电子工业出版社:《计算机网络》课程教学资源(第五版,PPT课件讲稿)第八章 因特网上的音频/视频服务.ppt
- 《微机原理与接口技术》课程教学资源(PPT课件讲稿)第1章 微型计算机基础概论.ppt
- 《现代操作系统 Modern Operating Systems》课程教学资源(PPT课件讲稿,Third Edition)Chapter 10 Case Study 1 LINUX.ppt
- 《大学计算机基础》课程教学资源(PPT课件讲稿)第三章 字处理软件 Word2003.ppt
- 《软件测试》课程教学资源(PPT讲稿)集成测试.pptx
- 香港中文大学:Adaboost for building robust classifiers(PPT讲稿).pptx
- 福建工程学院:《软件工程》课程教学资源(实验指导书).doc
- 《数据结构》课程教学资源(PPT课件讲稿)第九章 排序.ppt
- 《图像处理与计算机视觉 Image Processing and Computer Vision》课程教学资源(PPT课件讲稿)Chapter 02 Image processing and computer vision(Camera models and parameters).pptx
- 四川大学:软件设计工具(PPT课件讲稿)Software design tool.ppt
- 《操作系统原理》课程教学大纲.pdf
- Homomorphic Secret Sharing:Low-End HSS from OWF、HSS for Branching Programs from DDH、The HSS Construction.ppsx
- 清华大学:《计算机网络》课程教学资源(PPT课件讲稿)Lecture 4 Routing.pptx
- 北京航空航天大学:Graph Search - a New Paradigm for Social Computing.pptx