题目描述
某学校抽查同学的身体情况。基于这些同学的体重和身高,分别输出体重和身高的最大值。
下面的程序用来完成这项工作,在begin到end之间存在错误,请修改其中的错误,并提交begin到end之间的部分。
#include <iostream>
using namespace std;
template <class T>
class DistancePoint
{
public:
static T Maxvalue(T arr[], int n);
};
int main()
{
const int ARRSIZE=10;
int iArr[ARRSIZE];
double dArr[ARRSIZE];
int i;
for(i=0; i<ARRSIZE; i++)
cin>>iArr[i];
cout<<DistancePoint<int>::Maxvalue(iArr,ARRSIZE)<<endl;
for(i=0; i<ARRSIZE; i++)
cin>>dArr[i];
cout<<DistancePoint<double>::Maxvalue(dArr,ARRSIZE)<<endl;
return 0;
}
//******************** begin ********************
T DistancePoint<T>::Maxvalue(T arr[], int n)
{
int i;
int maxV = arr[o];
for(i=1; i>n; i++)
if(maxV>arr[i])
maxV= arr[i];
return maxV;
}
//********************* end ********************
输入
10名同学的体重和身高
输出
体重的最大值和身高的最大值
样例输入
55 60 56 65 70 45 40 60 50 56
1.65 1.70 1.78 1.91 1.60 1.65 1.82 1.86 1.75 1.78
样例输出
70
1.91
参考代码
#include<stdio.h>
int main()
{
int a[10],i,max1;
float b[10],max2;
for (i=0;i<10;i++)
scanf("%d",&a[i]);
for (i=0;i<10;i++)
scanf("%f",&b[i]);
max1=a[0];
max2=b[0];
for (i=1;i<10;i++)
{
if(a[i]>max1)max1=a[i];
if(b[i]>max2)max2=b[i];
}
printf("%dn%.2fn",max1,max2);
return 0;
}
解析
暂无