版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_17497931/article/details/84067672
题目描述
利用函数模板求3个数中的中间值。
在下述代码的基础上,完成设计,提交时,只需要提交缺失的代码。
输入
三个整数
三个字符
三个小数
输出
三个整数中的中间值
三个字符中的中间值
三个小数中的中间值
样例输入
1 3 2
a b c
2.2 3.3 1.1
样例输出
int:2
char:b
double:2.2
答案
#include <iostream>
using namespace std;
template <typename T>
//--------------begin-----------
// 补充缺少代码
T middle(T a,T b, T c){
if(a>b && a<c || a<b && a>c)
return a;
else if(b>a && b<c || b<a && b>c)
return b;
else if(c>a && c<b || c<a && c>b)
return c;
};
//--------------end-------------
int main()
{
int a1,b1,c1;
cin>>a1>>b1>>c1;
int m1=middle(a1,b1,c1);
cout<<"int:"<<m1<<endl;
char a2,b2,c2;
cin>>a2>>b2>>c2;
char m2=middle(a2,b2,c2);
cout<<"char:"<<m2<<endl;
double a3,b3,c3;
cin>>a3>>b3>>c3;
double m3=middle(a3,b3,c3);
cout<<"double:"<<m3<<endl;
return 0;
}