面向对象程序设计上机练习一(函数重载)
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
利用数组和函数重载求5个数最大值(分别考虑整数、单精度、长整数的情况)。
输入
分别输入5个int型整数、5个float 型实数、5个long型正整数。
输出
分别输出5个int型整数的最大值、5个float 型实数的最大值、5个long型正整数的最大值。
示例输入
11 22 666 44 55 11.11 22.22 33.33 888.88 55.55 1234567 222222 333333 444444 555555
示例输出
666 888.88 1234567
来源
zlh
C
#include<stdio.h>
int main()
{
int i,j,n,m;
float a,b;
long int c,d;
for(i=0;i<5;i++)
{
scanf("%d",&n);
if(i==0)
m=n;
else
if(n>m)
m=n;
}
for(i=0;i<5;i++)
{
scanf("%f",&a);
if(i==0)
b=a;
else
if(a>b)
b=a;
}
for(i=0;i<5;i++)
{
scanf("%ld",&c);
if(i==0)
d=c;
else
if(c>d)
d=c;
}
printf("%d\n%.2f\n%ld\n",m,b,d);
}
C++
#include<iostream>
using namespace std;
template<typename T>
T max(T a,T b,T c,T d,T e)
{
T f=a;
if(b>f)
f=b;
if(c>f)
f=c;
if(d>f)
f=d;
if(e>f)
f=e;
return f;
}
int main()
{
int a,b,c,d,e,f;
float a1,b1,c1,d1,e1,f1;
long a2,b2,c2,d2,e2,f2;
cin>>a>>b>>c>>d>>e;
f=max(a,b,c,d,e);
cout<<f<<endl;
cin>>a1>>b1>>c1>>d1>>e1;
f1=max(a1,b1,c1,d1,e1);
cout<<f1<<endl;
cin>>a2>>b2>>c2>>d2>>e2;
f2=max(a2,b2,c2,d2,e2);
cout<<f2<<endl;
}