编辑代码

#include<stdio.h>
void maxmin(float a[],int i,int j,float *fmax,float *fmin) {
	int mid;
	float lmax,lmin,rmax,rmin;
	if(i==j) {
		*fmax=a[i];
		*fmin=a[j];
		return;
	} else if(i==j-1) {
		if(a[i]>a[j]) {
			*fmax=a[i];
			*fmin=a[j];
		} else {
			*fmax=a[j];
			*fmin=a[i];
		}
		return ;

	} else {
		mid=(i+j)/2;
		maxmin(a,i,mid,&lmax,&lmin);
		maxmin(a,mid+1,j,&rmax,&rmin);
		if(lmax>rmax)
			*fmax=lmax;
		else
			*fmax=rmax;
		if(lmin<rmin)
			*fmin=lmin;
		else
			*fmin=rmin;
	}
	return ;
}
int main() {
	int n;
	float a[100];
	float fmax,fmin;
	scanf("%d",&n);
	for(int i=0; i<n; i++)
		scanf("%f",&a[i]);
	maxmin(a,0,n-1,&fmax,&fmin);
	printf("%0.1f %0.1f",fmax,fmin);
}