输入4个整数,找出其中最大的数,用一个函数来实现

函数的嵌套调用:

        C++不允许对函数作嵌套定义,也就是说在一个函数中不能完整地包含另一个函数。

        在一个程序中每一个函数的定义都是互相平行和独立的,如
        void f1()  {...}
        int    f2()  {...}
        float f3()  {...}
        long f4()  {...}
        虽然C++不能嵌套定义函数,但可以嵌套调用函数,也就是说,在调用一个函数的过程中,又调用另一个函数。
        在程序中实现函数嵌套调用时,需要注意的是:在调用函数之前,需要对每一个被调用的函数作声明(除非定义在前,调用在后)。

解题思路:

        根据题目的要求,可以定义一个函数max_4来实现从4个数中找出最大的数。前面已知,用max函数可以很方便地找出两个数中的大者。因此考虑能否通过调用max函数来实现从4个数中找出最大数呢?结论是可以的。先用 max(a,b)找出a和b中的大者,赋给变量m。再用max(m,c)函数求出a,b,c三者中的大者,再赋给m(因为m是a和b 中的大者,因此max(m,c)就是a,b,c三者中的大者),把它赋给m。再用max(m,d)求出a,b,c,d四者中的大者,它就是a,b,c,d4个数中的最大数。
        在max_4函数中调用3次max函数,就求出4个数中的最大数。最后在主函数中输出结果。

编写程序:

运行结果:

程序分析:

        在主函数中要调用max_4函数,因此在主函数的开头要对max_4函数作声明。在max_4函数中3次调用max函数(这是嵌套调用),因此在max_4函数的开头要对max函数作声明。由于在主函数中没有直接调用max函数,因此在主函数中不必对max函数作声明,只须在max_4函数中作声明即可。
        max_4函数执行过程是这样的:第1次调用max函数得到的函数值是a和b中的大者,把它赋给变量m,第2次调用max(m,c)得到m和c的大者,也就是a,b,c中的最大数,再把它赋给变量m。第3次调用max(m,d)得到m和d的大者,也就是a,b,c,d中的最大数,再把它赋给变量m。这是一种递推方法,求出两个数的大者;再以此为基础求出3个数的大者;再以此为基础求出4个数的大者。m的值一次一次地变化,直到实现最终要求。
        max函数的函数体可以只用一个return语句,返回一个条件表达式的值:
        {retum(x>y? x: y);}
        本例是一次嵌套调用,有些较复杂的问题可以用多层嵌套调用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/12125.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

字符串函数(二):strlen(求长度),strstr(查找子串),strtok(分割),strerror(打印错误信息)

字符串函数 一.strlen(求字符串长度)1.函数使用2.模拟实现(三种方法) 二.strstr(字符串查找子串)1.函数使用2.模拟实现 三.strtok(字符串分割)四.strerror,perror&#x…

GPT-4o测评,智力弱于人类,还没有我女朋友聪明。

我和GPT-4o玩了一个游戏,这个游戏在秒时app上随便找个女孩都能打败我,但是我却赢了GPT-4o好几次,于是我觉得智力弱于人类,还没有我女朋友聪明。 过程如下: 井字棋游戏 游戏规则 玩家轮流在一个3x3的棋盘上标记“X”或…

SCP收容物171~180

注 :此文接SCP收容物161~170,本文只供开玩笑 ,与steve_gqq_MC合作 --------------------------------------------------------------------------------------------------------------------------------- 目录 scp-171 scp-172 scp-173 scp-174 scp-175 …

知了汇智引领未来:全新AIGC系列课程,打造数字时代人才新标杆

在全球AIGC(生成式人工智能)技术加速发展的背景下,一系列权威报道揭示了该领域内市场潜力、行业应用、教育研究、政府监管以及具体应用场景的蓬勃进展。据腾讯网4月19日报道,中国AIGC应用市场规模预计于2024年达到200亿人民币&…

01 Triton backend

1 整体架构 三部分组成: Triton backend tensorRT_backend、onnx_backend、tfs_backend、torch_backend **Triton model ** 不同的模型 **Triton model instance ** 模型实例 ![P2}5X%2ULV(2OAC$_OKOP.png 2 设计思路 需要实现七个接口: TRITON…

drippingblues 靶机实战

信息收集: Nmap: 存活: 靶机ip:192.168.10.110 端口: 服务: 发现ftp服务可以匿名登录。且用户名是FTP。 发现一个压缩包,下载并爆破。 得到密码 072528035。发现关键字 drip。里面还有一个 secret.zip(…

30-10y国债利差反转的必要条件

国君宏观表示,30-10y期限利差定价本质上是私人部门主动加杠杆的预期,央行购债与资本市场的正向反馈是可以期待的一种场景,而企业部门的被动加杠杆须以可持续的需求动能与盈利预期作为前提。 要点: 期限利差的本质:对长…

SSM整合-前后端分离-实现增删改查 (下)

主流框架SSM 实现功能03-添加家居信息需求分析/图解思路分析代码实现注意事项和细节 实现功能04-显示家居信息需求分析/图解思路分析代码实现 实现功能05-修改家居信息需求分析/图解思路分析代码实现注意事项和细节 实现功能06-删除家居信息需求分析/图解思路分析代码实现课后作…

教育型内容的制胜秘诀:Kompas.ai如何结合知识与营销

在数字化营销的浪潮中,教育型内容已经成为品牌建立权威性和提供价值的重要手段。通过分享专业知识和见解,品牌不仅能够吸引目标受众,还能够在潜在客户心中建立起专业和可信赖的形象。本文将深入分析教育型内容的重要性,详细介绍Ko…

记录一下Hql遇到的零碎问题

建表相关 -- 地区维度表 drop table dim_province_full; create table dim_province_full( id string comment 编号, name string comment 省份名称, region_id string comment 大区id, area_code string comment 行政区位码, iso_code string comment 国际编码, iso_3166_2 s…

display:flex align-items:center无效的不一样的解决思路

写H5的时候&#xff0c;希望两个元素在div中垂直居中&#xff0c;但是设置align-items:center无效&#xff0c;最终排查原因是引入三方css影响了align-items:center。 具体分析如下&#xff0c;想让搜索图标和input在div里水平居中&#xff1a; 布局如下&#xff1a; <div…

测试 vs2019 c++ 在 32 位系统和 64 位系统里的 sizeof ( void * )

再看下反汇编&#xff1a; 接着给出 32 位系统的结果&#xff1a; 谢谢阅读

【数据结构】单链表专题-->单链表实现(附:全部码源)

&#x1f525;博客主页&#x1f525;&#xff1a;【 坊钰_CSDN博客 】 欢迎各位点赞&#x1f44d;评论✍收藏⭐ 目录 1. 链表的概念及结构 2. 预前准备 2.1 分文件存放 3. 单链表的实现 3.1 定义节点 3.2 尾插和头插 3.2.1 尾插 3.2.2 头插 3.3 节点申请空间和打印 3.3…

css多种布局方式

css多种布局方式 简介标准流布局&#xff08;主要依赖margin\padding&#xff09;浮动布局&#xff08;float&#xff09;定位布局&#xff08;position&#xff09;弹性布局&#xff08;flex&#xff09;网格布局&#xff08;grid&#xff09;多列布局&#xff08;column&…

05-13 周一 量化是什么

05-13 周一 量化是什么 时间版本修改人描述2024年5月13日11:27:25V0.1宋全恒新建文档2024年5月14日16:21:20V1.0宋全恒了解 简介 神经网络在运行时有较高的计算成本&#xff0c;而且随着大模型时代的到来&#xff0c;知识由一个巨大的LLM存储&#xff0c;为了获取知识&#xf…

函数1111

DDL CREATE TABLE student (id INT PRIMARY KEY AUTO_INCREMENT,createDate DATETIME NOT NULL,userName VARCHAR(255) NOT NULL,phone VARCHAR(20) NOT NULL,age INT NOT NULL,sex ENUM(男, 女) NOT NULL,introduce TEXT ); DML INSERT INTO student (creatDate, userName,…

android webview加载页面失败事件的处理,包括http异常的情况

网上查到的方法是如下这样的&#xff0c;这种方法对于服务器可以访问&#xff0c;但是发生40x错误时是无效的。 webView.setWebViewClient(new WebViewClient() {Overridepublic void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {su…

[力扣题解]452. 用最少数量的箭引爆气球

题目&#xff1a;452. 用最少数量的箭引爆气球 思路 贪心法 希望尽可能射爆叠在一起的气球&#xff1b; 以气球的左边界进行升序排序&#xff0c;再从左到右遍历&#xff0c;遇到有重叠的气球&#xff0c;则让当前气球的有边界与上一个气球的右边界对齐&#xff08;min操作&a…

web入门练手案例(一)

下面是一下web入门案例和实现的代码&#xff0c;带有部分注释&#xff0c;倘若代码中有任何问题或疑问&#xff0c;欢迎留言交流~ 新闻页面 案例描述&#xff1a; 互联网的发展使信息的传递变得方便、快捷&#xff0c;浏览新闻称为用户获取信息的重要渠道。下面将实现一个简…

原子学习笔记3——点亮 LED

一、应用层操控设备的两种方式 应用层如何操控底层硬件&#xff0c;同样也是通过文件 I/O 的方式来实现&#xff0c;设备文件便是各种硬件设备向应用层提供的一个接口&#xff0c;应用层通过对设备文件的 I/O 操作来操控硬件设备&#xff0c;譬如 LCD 显示屏、串口、按键、摄像…