您的位置:首页 > 其它

同时查找最大值和最小值

2015-09-25 11:37 281 查看
#include <iostream>
#include <stdio.h>
#include <math.h>
#include <string.h>
using namespace std;

void Find_MIN_MAX(int A[], int n)
{
int i, min, max;
int len = 0;
if( n % 2 )
{
max = min = A[1];
len = n/2;

for(i = 2 ;i <= n ; i+=2)
if(A[i]<A[i+1])
{
if(min>A[i]) min = A[i];
if(max<A[i+1]) max = A[i+1];
}
else
{
if(min>A[i+1]) min = A[i+1];
if(max<A[i]) max = A[i];
}

}
else
{
min = A[1] > A[2] ? A[2] : A[1];
max = A[1] + A[2] - min;
len = n/2 - 1;

for(i = 3 ;i <= n ; i+=2)
if(A[i]<A[i+1])
{
if(min>A[i]) min = A[i];
if(max<A[i+1]) max = A[i+1];
}
else
{
if(min>A[i+1]) min = A[i+1];
if(max<A[i]) max = A[i];
}
}

cout<<"min="<<min<<" max="<<max<<endl;
}

int main()
{
int T, i = 1, n, a[100];
freopen("in.txt","r",stdin);
//freopen("out.txt","w",stdout);
cin >> T;
n = T;

while(T--)
{
cin>>a[i];
i++;
}

Find_MIN_MAX(a , n);

fclose(stdin);
//fclose(stdout);

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: