1.声明函数sort为重载函数,并根据参数个数的不同分别进行定义;
2.在main中用cin分别输入两个整数和三个整数;
3.根据参数个数的不同,调用不同的函数,从而实现重载。
int main(){ int a,b; int c,d,e; cout<<"请输入两个整数:"<<endl; cin>>a>>b; sort(a,b); cout<<"排序之后:"<<a<<" "<<b<<" "<<endl; cout<<"请输入三个整数:
<<endl; cin>>c>>d>>e; sort(c,d,e); cout<<"排序之后:"<<c<<" "<<d<<" "<<e<<" "<<endl; getchar(); getchar(); return 0;}
public void sort ( int a, int b)
{
Console.WriteLine("两整数从小到大依次为{0}、{1}",a<=b?a:b,a>b?a:b);
}
public void sort(double a, double b,double c)
{
double max ,mid,min;
if(a-b>=0.0)
{max=a; min=b;}
else
{max=b;min=a;}
if(max-c<0.0)
{ mid=max; max=c;}
else if(min-c>0.0)
{ mid=min; min=c;}
else
mid =c;
Console.WriteLine("三个实数从小到大依次为{0}、{1}、{2}",min,mid,max);
}
扩展资料:
C++的这种编程机制给编程者极大的方便,不需要为功能相似、参数不同的函数选用不同的函数名,也增强了程序的可读性。
C++运算符重载的相关规定如下:
(1)不能改变运算符的优先级;
(2)不能改变运算符的结合型;
(3)默认参数不能和重载的运算符一起使用;
(4)不能改变运算符的操作数的个数;
参考资料来源:百度百科-重在函数
源代码如下:
#include <iostream>
using namespace std;
void sort(int &a,int &b)
{
int temp;
if (a>b)
{
temp = a;
a = b;
b = temp;
}
}
void sort(int &a,int &b,int &c)
{
int temp[3];
if (b>a)
{
temp[0] = a;
temp[1] = b;
if (c>b)
temp[2] = c;
else
{
if (c<a)
{
temp[0] = c;
temp[1] = a;
temp[2] = b;
}
else
{
temp[1] = c;
temp[2] = b;
}
}
}
else
{
temp[0] = b;
temp[1] = a;
if (a>c)
{
if (b>c)
{
temp[0] = c;
temp[1] = b;
temp[2] = a;
}
else
{
temp[1] = c;
temp[2] = a;
}
}
else
temp[2] = c;
}
a = temp[0];
b = temp[1];
c = temp[2];
}
int main()
{
int a,b;
int c,d,e;
cout<<"请输入两个整数:"<<endl;
cin>>a>>b;
sort(a,b);
cout<<"排序之后:"<<a<<" "<<b<<" "<<endl;
cout<<"请输入三个整数:"<<endl;
cin>>c>>d>>e;
sort(c,d,e);
cout<<"排序之后:"<<c<<" "<<d<<" "<<e<<" "<<endl;
getchar();
getchar();
return 0;
}
用重载函数实现两个整数和三个整数的排序,按照从小到大的顺序将排序结果...
c = temp[2];}int main(){ int a,b; int c,d,e; cout<<"请输入两个整数:"<<endl; cin>>a>>b; sort(a,b); cout<<"排序之后:"<<a<<" "<<b<<" "<<endl; cout<<"请输入三个整数:"<<endl; cin>>c>>d>>e; sort(c,d,e); cout<...
用重载函数实现两个整数和三个整数的排序,按照从小到大的顺序将排序结果...
int main(){ int a,b; int c,d,e; cout<<"请输入两个整数:"<<endl; cin>>a>>b; sort(a,b); cout<<"排序之后:"<<a<<" "<<b<<" "<<endl; cout<<"请输入三个整数:<<endl; cin>>c>>d>>e; sort(c,d,e); cout<<"排序之后:"<<c...
编写重载函数Max可分别求取两个整数,三个整数,两个双精度数,三个双精度...
int Max(int x, int y){ return x>y?x:y;} int Max(int x, int y, int z){ return (x>y && x>z)?x:(y>z?y:z);} double Max(double x, double y){ return x>y?x:y;} double Max(double x, double y, double z){ return (x>y && x>z)?x:(y>z?y:z);} ...
用vs编写c++重载函数maxl可以分别求两个整数,三个整数,两个三精度...
double max(double f1, double f2){ return (f1>f2)?f1:f2;} double max(double x1,double x2,double x3){ double y = max(x1,x2); return (y>x3)? y:x3;} int main(){ int x1=1, x2=3, x3=2;printf("max(%d,%d)= %d\\n", x1, x2, max(x1, x2));printf("max(%...
用函数模板实现重载函数max1可分别求取两个整数,三个整数,两个双精度数...
T max(T a, T b, T c=0){ T n;if(!c) c=a; \/\/对于两个形参也可以,但是对于三个形参,在调用函数的时候如果a,b,c,中有一个为零,有意识的使其c!=0就OK~n = a > b ? a : b;n = n > c ? n : c;return n;} 这个是有问题的,要是a和b都是负数,而c为0时...
编写程序,实现两个整数和三个整数的加法(其中add()函数设计成重载函数...
1、两个整数进行异或运算,可以获得不带进位的和,两个整数进行与运算然后左移一位,可获取其进位的值,将所得数字继续相同的步骤,直到进位的值为 0 。2、根据算法思想,编码实现算法。3、编写测试代码。4、运行测试代码,观察舒服,符合预期。5、平台提交算法,测试通过。
编写重载函数Max 1可分别求取两个整数,三个整数,两个双精度数,三个双...
return a;if(b-c>0.00001)return b;else return c;} void main(){ int a=2, b=5, c=6;double a1=2.14,b1=3.14,c1=5.5;cout<<max(a,b)<<endl;cout<<max(a,b,c)<<endl;cout<<max(a1,b1)<<endl;cout<<max(a1,b1,c1)<<endl;} 另外,站长团上有产品团购,便宜有保证 ...
用函数重载形式实现2个或者3个整数相加 相减
int addsub(int nA, int nB, bool bAdd){ if(bAdd) return nA+nB;return nA-nB;} int addsub(int nA, int nB, int nC, bool bAdd){ if(bAdd) return nA+nB+nC;return nA-nB-nC;}
c++分别对三个整数,三个实数,三个字符从小到大排序,用重载函数实现
利用C++重载函数、引用和冒泡排序分别实现三个整数、三个实数、三个字符的升序排序,参考代码如下:include<iostream>using namespace std;void sort(int &a,int &b,int &c){int t;if(a>b)t=a,a=b,b=t;if(b>c)t=b,b=c,c=t;if(a>b)t=a,a=b,b=t;}void sort(float &a,float...
用c++编写重载函数max1课分别求取2个整数、3个整数、2个双精度数和3个...
c++编写 include <iostream> using namespace std;int Max1(int a,int b){ if(a>b)return a;else return b;} double Max1(double x,double y){ if(x>y)return x;else return y;} int Max1(int a,int b,int c){ return Max1(a,Max1(b,c));} double Max1(double x,double ...