c++选取最大值的函数max() 可否直接调用
可以直接调用,如下列例子则会直接输出13。
#include <iostream>
using namespace std;
int main()
{
cout<<max(12,13)<<endl;
return 0;
}
如果参数为错误值或不能转换成数字的文本,将产生错误。如果参数为数组或引用,则只有数组或引用中的数字将被计算。数组或引用中的空白单元格、逻辑值或文本将被忽略。如果逻辑值和文本不能忽略,请使用函数 MAXA 来代替。
如果参数不包含数字,函数 MAX 返回 0。
扩展资料:
示例1:如果 A1:A5 包含数字 10、7、9、27 和 2,则:
MAX(A1:A5) 等于 27
MAX(A1:A5,30) 等于 30
示例2:如果A1=71、A2=83、A3=76、A4=49、A5=92、A6=88、A7=96。
则公式“=MAX(A1:A7)”返回96。
示例3:课时计算,一个教学班不足60人的按60人计算,超过60人的,每超过1人,课时增加0.006。
公式为=1+MAX(A1-60,0)*0.006
示例4:用Max函数计算个人所得税,假定1000元以下不征税,1000-2000元,超出1000元的部分按1%征税,2000-5000元,超出2000元的总分按2%征税,还要加上2000元的额定税(2000-1000)*1%=10元;5000元以上,超出5000元的部分按5%征税,同时加上2000元的额定税40元。
则公式为=MAX((A1-{1000,2000,5000})*{0.01,0.02,0.05}+{0,10,40},0)
最终简化为=MAX(A1*{0.01,0.02,0.05}-{10,30,210},0)
参考资料:百度百科:max函数
#include <iostream>
using namespace std;
int main()
{
cout<<max(12,13)<<endl;
return 0;
}
可以直接调用,这里输出13
1.如果两个相等呢?2.如果里面的参数个数不确定呢?这时还可以么?Thx
这个函数的实现是这样的:
template<class _Ty> inline
const _Ty& (max)(const _Ty& _Left, const _Ty& _Right)
{ // return larger of _Left and _Right
return (_DEBUG_LT(_Left, _Right) ? _Right : _Left);
}
相等的话就等于这个值。max(12,12)=12 只能有两个参数
参数个数不确定就得用数组了,比如int a[]={12,13,14,15};
#include<algorithm>//这里包含数组选取最大值和最小值的函数
cout<<*max_element(a,a+4)<<endl; //使用这个函数求出数组里的最大值
int max(int a, int b)
{
if(a>b) return a;return b;
}