编辑代码

#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=(j-i)/2+i;
   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(){
 float a[11]={12,58,13,4,38,15,98,31,49,31,54};
 float fmax,fmin;
 maxmin(a,0,10,&fmax,&fmin);
 printf("%f,%f",fmax,fmin); 
 }