c++float double型转换

我的代码是这样的:
#include <iostream>

#include <iomanip>

using namespace std;

int main()

{

int n;

cin>>n;

float a[100],b[100],mix=100.00,max=0.00;

double dis;

for(int i=0;i<n;i++)

{

cin>>a[i]>>b[i];

}

for(int i=0;i<n;i++)

{

if(a[i]<mix)

mix=a[i];

}

for(int i=0;i<n;i++)

{

if(b[i]>max)

max=b[i];

}

dis=max-mix;

cout<<fixed<<setprecision(4)<<dis<<endl;

return 0;

}

无法输出样例上的答案,求帮助。

以下代码,测试通过,你试试
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int main()
{
    int n;
    cin>>n;
    double dis=0,a[100],b[100],max=0;
    for(int i=0;i<n;i++)
    {
        cin>>a[i]>>b[i];
    }

for( int j=0;j<n-1;j++ )
for( int k=j+1;k<n;k++ )
{
dis=sqrt( (a[k]-a[j])*(a[k]-a[j]) + (b[k]-b[j])*(b[k]-b[j]) );
if ( dis > max )
max=dis ;
}
    cout<<fixed<<setprecision(4)<<max<<endl;
    return 0;
}

温馨提示:答案为网友推荐,仅供参考
相似回答