C++语言程序设计

| 例5-28

//函数重载
#include <iostream.h>
int add(int i,int j) //当参数为两个整型数时，该函数进行整数的加法运算
{
return i+j; //返回值为两个整型数之和
}
double add(double i,double j) //当参数为两个双精度浮点数时，该函数进
//行双精度浮点数的加法运算
{
return i+j; //返回值为两个双精度浮点数之和
}
int min(int a,int b) // 当参数个数为2时，取两个数中的最小值返回
{
return a<b?a:b; //比较a与b的大小，取较小的数返回
}
int min(int a,int b,int c) //当参数个数为3时，取三个数中的最小值返回
{
int x=min(a,b); //获得a、b中的最小值，并返回给x
return min(x,c); //获得x、c中的最小值，并返回
}
int min(int a,int b,int c,int d) //取四个数中的最小值
{
int x=min(a,b,c); // 获得a、b、c中的最小值，返回给x
return min(x,d); // 获得x、d中的最小值，并返回
}
void main()
{
int a=2,b=3,c=1,d=5;
double x=3.5,y=5.2;
int e,f,g,h;
double z;
e=add(a,b); //用两个整型数为参数，调用add函数
z=add(x,y); //用两个双精度浮点数为参数，调用add函数

//输出计算结果e和z
cout<<a<<"+"<<b<<" = "<<e<<endl;
cout<<x<<"+"<<y<<" = "<<z<<endl;

f=min(a,b); // 用两个整型数为参数，调用min函数
g=min(a,b,c); // 用三个整型数为参数，调用min函数
h=min(a,b,c,d); //用四个整型数为参数，调用min函数
//输出计算结果f、g和h
cout<<"The minimal number of "<<a<<" and "<<b<<" is "<<f<<endl;
cout<<"The minimal number of "<<a<<" and "<<b
<<" and "<<c<<" is "<<g<<endl;
cout<<"The minimal number of "<<a<<" and "<<b
<<" and "<<c<<" and "<<d<<" is "<<h<<endl;
}
运行该程序，结果如下：
2 +3 = 5
3.5+5.2 = 8.7
The minimal number of 2 and 3 is 2
The minimal number of 2 and 3 and 1 is 1
The minimal number of 2 and 3 and 1 and 5 is 1