C++_自定义函数实现返回两个数中的较小数

2023-10-28

本文仅仅发布在CSDN我的博客:点击打开链接

http://blog.csdn.net/pythontojava?viewmode=contents

转载请注明出处。

我用的IDE是VS2013.。代码在vc++6.0不能编译,要把int _tmain(int argc, _TCHAR* argv[]) 改成 int main() 。


已知两个int数字,返回其中的较小数。

C++已经有这个函数——min(a,b),返回a,b直接的较小值,如果两者相等返回a。这个函数头文件是<algorithm>。

已知两个int数字,返回其中的较大数。

C++已经有这个函数——max(a,b),返回a,b直接的较小值,如果两者相等返回a。这个函数头文件同上。

用法如下:

#include "stdafx.h"
#include<iostream>
#include<algorithm>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
	int a=2, b=3;
	int c = 4, d = 5;
	cout << min(a,b);
	cout << endl;
	cout << max(c, d);
	cout << endl;
	system("pause");
	return 0;
}

了解详情戳这里点击打开链接

========分割线=============

现在自己定义函数实现这个功能。

#include "stdafx.h"
#include<iostream>
using namespace std;
int min(int value1, int value2)
{	
	//如果value1<=value2,则返回value1,否则返回value2
	return(value1 <= value2?value1 : value2);
}
int max(int value1, int value2)
{
	return(value1 >= value2 ? value1 : value2);
}

int _tmain(int argc, _TCHAR* argv[])
{
	int a=2, b=3;
	int c = 4, d = 5;
	cout << min(a,b);
	cout << endl;
	cout << max(c, d);
	cout << endl;
	system("pause");
	return 0;
}
运行结果:


========分割线=============

现在用函数模板实现min(),max()

函数模板基础讲解在这里:点击打开链接

#include "stdafx.h"
#include<iostream>
#include<string>
using namespace std;
template<typename T>
T min(T value1, T value2)
{
	return(value1 <= value2 ? value1 : value2);
}
template<typename A>
A max(A value1, A value2)
{
	return(value1 >= value2 ? value1 : value2);
}
int _tmain(int argc, _TCHAR* argv[])
{
	cout << min<float>(6.99,9.88);
	cout << endl;
	cout << max<char>('a','A');
	cout << endl;
	cout << max<string>("ABC", "AB");
	cout << endl;
	system("pause");
	return 0;
}
运行结果:



本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C++_自定义函数实现返回两个数中的较小数 的相关文章

  • C++:字符串流有什么好处?

    谁能告诉我一些在 C 中使用字符串流的实际例子 即使用流插入和流提取运算符输入和输出到字符串流 您可以使用字符串流来转换任何实现operator lt lt 到一个字符串 include
  • 正则表达式提取美国邮政编码,但不提取假代码

    使用 XML 包和 XPath 从网站上抓取地址 有时我只能得到一个嵌入了我想要的邮政编码的字符串 提取邮政编码很简单 但有时会显示其他五位数字的字符串 以下是 df 中问题的一些变体 zips lt data frame id seq 1
  • C 中的 '\0' 和 printf()

    在 C 入门课程中 我了解到在存储字符串时存储空字符 0在它的最后 但是如果我想打印一个字符串怎么办 printf hello 虽然我发现它并没有结束 0通过以下声明 printf d printf hello Output 5 但这似乎不
  • 带有嵌入 Flash 视频的 PDF 示例?

    有谁知道我在哪里可以查看嵌入 Flash 视频的 PDF 示例 我知道问这个问题很愚蠢 因为你会认为任何面向技术的用户都应该能够使用谷歌找到一个 但我真的找不到 我的另一个问题是 使用 C 中的 API 将 Flash 视频嵌入 PDF 文
  • C++ 并行任务的开销

    我有以下简单的功能 include
  • C 链表销毁函数

    我正在尝试学习 C 和很多人一样 我对指针有点困惑 无论如何 我创建了一个递归函数来销毁我的链表 但是正如我调试的那样 当我从函数返回时 列表的头部不应该为空 所以我猜这是对指针的一些基本误解 这是函数 void destroy struc
  • 为什么 ObservableCollection 有两个集合构造函数?

    The 可观察集合 T https msdn microsoft com en us library ms668604类有两个构造函数 可以在其中传递项目集合 一个构造函数接受一个IEnumerable T 另一个List T 鉴于List
  • 使用 LINQ 展平嵌套字典

    所以我有一本形式的字典Dictionary
  • 微软怎么能说WinAPI中一个字的大小是16位呢?

    我刚刚开始学习WinAPI 在MSDN中 对WORD数据类型提供了以下解释 WORD16 位无符号整数 范围是十进制 0 到 65535 该类型在 WinDef h 中声明如下 typedef 无符号短 WORD 很简单 而且它与我一直在使
  • 如何在Unity Inspector中创建多维数组?

    如何在 Unity Inspector 中创建枚举多维数组并使其可序列化 以便我可以从不同的脚本调用它 public enum colors red blue green yellow cyan white purple public in
  • 用 OpenCL C 编写快速线性系统求解器

    我正在编写一个 OpenCL 内核 它将涉及求解线性系统 目前我的内核太慢了 提高线性系统部分的性能似乎是一个不错的起点 我还应该注意 我并没有尝试使我的线性求解器并行 我正在研究的问题在宏观层面上已经是令人尴尬的并行 以下是我编写的 C
  • 可以通过模板间接访问基类中的私有类型

    我试图在编译时根据类型是否在给定范围内公开可用来选择要使用的类型 最好直接看代码 include
  • 是否自初始化 'A a = a;'允许吗?

    此代码在运行时在复制构造函数中失败 但编译器 MSVS2008 没有发出警告 您能解释一下 最好引用标准 这段代码是否非法或什么 我理解 A a a 永远不应该写在第一位 但我正在寻找理论背景 class A public A p new
  • 使用左连接获得不适当的输出

    我正在尝试获取变体列表 并且对于每个变体都获取所有subvariants list无论子变体属于何处 特别的Test say 100 这是示例数据 Id TestId SourceSubVariantId TargetSubVariantI
  • 将旧的 Unity 代码升级到 Unity 5

    在触发按钮上播放动画的代码似乎不起作用 我在 Youtube 上看到了一个视频 内容很简单animation Play 它可以在该视频上运行 但我无法让它在我的计算机上运行 我做错了什么还是团结改变了它 请帮助我在网上找不到解决方案 所有
  • 如何将输出重定向到 boost 日志?

    我有一个使用boost log的C 程序 我加载了用户提供的动态链接库 我想将 stderr 重定向到 boost 日志 以便用户的库随时执行以下操作 std cerr lt lt Some stuff 它产生相同的结果 BOOST LOG
  • 解析连接字符串

    是否有标准库或代码片段可以使用这样的连接字符串获取值 string connstr DataServiceUrl http localhost foo RemoteServerConnection server http localhost
  • 我的代码哪里有泄漏?

    下面是我的代码 它打开一个 XML 文件 old xml 过滤无效字符并写入另一个 XML 文件 abc xml 最后 我将再次加载 XML abc xml 当执行以下行时 出现异常 表示 xml 文件被另一个进程使用 xDoc Load
  • 如何解决 boost::multi precision::cpp_dec_float 除法错误

    除以boost multiprecision cpp dec float有某种舍入误差 如下 include
  • 使用 DataGridViewCheckboxCell 真正禁用 DataGridView 中的复选框

    有谁知道如何使用 DataGridViewCheckboxCell 禁用 DataGridView 中的复选框 我可以将其设置为只读 并设置背景颜色 但我无法让复选框本身显示为禁用状态 有什么想法吗 Guess 你必须自己画 http so

随机推荐

  • Cas5.3服务器集成DM8 达梦数据库

    DM8达梦数据库相关准备 1 安装DM8达梦数据库并安装相关数据库实例 省略一千字 2 新建ucas auth user表 并增加相关用户条记录 DROP TABLE IF EXISTS ucas auth user CREATE TABL
  • 命令行修改java 内存,在命令行上增加jMeter的内存

    I am running jMeter from the command line on a Mac Today it threw an Out of memory heap space error newbie sh jmeter sh
  • PlayerPawn(鼠标控制移动、旋转、大小缩放)

    ue4制作PlayerPawn 鼠标拖动 旋转 YLimtMin 值 89 YLimtMax 值 10 鼠标滚轮键 控制弹簧臂长短 主要控制移动开关 函数LimtMovsePicth
  • STL——map、set等红黑树结构的最后一个元素

    map set等背后由于红黑树的关系 插入元素后便成为 平衡 搜索树了 所以末尾元素默认为最大值 得到该值的方法 1 利用 rbegin 反向迭代器 int main int argc char argv map
  • IntersectionObserver实现小程序长列表优化

    IntersectionObserver实现小程序长列表优化 关于 IntersectionObserver 思路 这里以一屏数据为单位 一个分页的10条数据 最好大于视口高度 监听每一屏数据和视口的相交比例 即用户能不能看到它 只将可视范
  • 接口测试之Jmeter+Ant+Jenkins接口自动化测试平台

    平台简介 一个完整的接口自动化测试平台需要支持接口的自动执行 自动生成测试报告 以及持续集成 Jmeter支持接口的测试 Ant支持自动构建 而Jenkins支持持续集成 所以三者组合在一起可以构成一个功能完善的接口自动化测试平台 环境准备
  • IDEA中输入法无法输入中文

    偶尔而遇到这个问题 又忘记了 记录下 在idea内无法输入中文 win环境可以 很简单快捷键 ctrl shift e 解决问题 看到好多文章去改变量 改配置文件 这
  • LinearLayout加载动态view时显示不全解决办法

    问题 在某个主要Layout里面有个LinearLayout 用来动态加载别的view页面 如果需要加载的动态view内容很空洞 例如没有足够的Text长度来撑起整个layout宽度 这时候这个被加载的view就会不能以fill paren
  • 图像处理入门5-特征提取

    特征提取 图像特征提取属于图像分析的范畴 是对图像信息的深层理解 是数字图像处理的高级阶段 同时也是图像识别的开始 特征工程是图像处理的必备工具 所以掌握它的重要性不言而喻 什么是特征 特征是某一类对象区别于其他类对象的相应 本质 特点或特
  • mybatis-plus的落地实践

    一 mybatis plus官网 MyBatis Plus 二 应用层面 mapper entitty 三 配置 1 引入依赖
  • cv_bridge 冲突(完美解决)

    ubuntu18 04 ros 用 opencv3 2 0 版本 设置 cmake 找到 OpenCVConfig cmake CMakeLists txt 文件里 find package 之前加一行 set set OpenCV DIR
  • 2018.07.20 WorkSummary——04

    今天任务 优化后台代码 简化前端js部分 收获 1 数据库部分表关联与左右连接的分别占用内存的问题 一下面的为例子 SELECT FROM 表a left joint 表b ON 表a bid 表b id LEFT JOIN 表c ON 表
  • 现代控制理论5——稳定性与稳定性判据

    注 本文是在MOOC平台上学习西北工业大学 现代控制理论基础 郭建国 赵斌 郭宗易 的课程进行随笔记录与整理 一 李雅普诺夫稳定性理论 1 前期铺垫 稳定性是系统正常工作的重要特性 稳定性 是描述初始条件 不一定为0 下 系统是否具有收敛性
  • vue实用插件分享

  • 特征学习与特征工程

    特征学习与特征工程 表示学习 当我们学习一个复杂概念时 总想有一条捷径可以化繁为简 机器学习模型也不例外 如果有经过提炼的对于原始数据的更好表达 往往可以使得后续任务事倍功半 这也是表示学习的基本思路 即找到对于原始数据更好的表达 以方便后
  • Java 序列化详解

    Java 序列化 Serialization 是指将一个 Java 对象转换成字节序列 以便在网络上传输或存储在本地磁盘中 而反序列化 Deserialization 则是将已经序列化的字节序列恢复为 Java 对象 Java 提供了自带的
  • 延迟执行PostDelayed

    Android程序中 使用postDelayed 方法 表示 在一段时间之后 执行新的线程 即可以达到一段特定程序延迟执行的目的 使用 延迟15秒 new Handler postDelayed new Runnable public vo
  • ACM---贪心----hdoj 1052

    http acm hdu edu cn showproblem php pid 1052 题目大意 田忌赛马问题 这类要从数组头尾比较的问题 一般设置两个变量记录头尾下标的变化 分析 1 如果田忌最快的马比齐王最快的马快 则比之 2 如果田
  • VMWare里Linux的网络配置

    今天终于把十几天前安装在VMWare里的Linux的网络配置搞定了 高兴啊 刚使用虚拟机时 就被它神奇的虚拟功能所着迷 因为一直想在电脑里装Linux 可是由于它与Windows的不兼容 怕一安装就把原来的系统破坏 但是在虚拟机里真的能很好
  • C++_自定义函数实现返回两个数中的较小数

    本文仅仅发布在CSDN我的博客 点击打开链接 http blog csdn net pythontojava viewmode contents 转载请注明出处 我用的IDE是VS2013 代码在vc 6 0不能编译 要把int tmain