それぞれ、float配列の最大値および最小値を検索し、最初と最後の要素は、交換

1の#include <stdio.hの>
 2  フロート [ 10 ]。
3  フロート * P;
4  INT メイン()
 5  {
 6      ボイド入力(フロート *、INT )。
7      無効出力(フロート *、int型);
8      、空隙変化(フロート *、int型);
9      P = A。
10      入力(P、10 )。
11      のprintf(" 输入完成\ n " );
図12は、ある      変更(P、10 );
 13である      (printfの" 動作が\ N-完了" );
 14      出力(P、10 );
 15      のprintf(" 出力完了\ N- " );
 16      リターン 0 ;
 17  }
 18である 
。19  int型分(フロート *、INT N-)
 20である {
 21れる     INT分= 0 ;
 22である     ためINT I = 1 ; I <N-; I ++ 23です     {
24          であれば(*(A +分)> *(+ I))分= I。
25      }
 26      リターン分。
27  }
 28  のint MAX(フロート *、INT n)の
 29  {
 30      int型の最大値= 0 31      のためにINT iが= 1 ; iが<N; iが++ 32      {
 33          であれば(*(+ max)は<*(+ I))MAX = I。
34      }
 35      リターンマックス。
36  }
 37  
38  空隙入力(フロート *、INT n)の
 39  {
 40      のためにINTは iは= 0、I <N; I ++ 41      {
 42          のscanf(" %のF "、+ I)。
43      }
 44  }
 45  
46  空隙変化(フロート *、INT n)の
 47  {
 48      INT iは= 分(N)と、
49      int型 J = MAX(、n)は、
50      であれば(j == 0)J =。      //注意深く重要理解
51はある     フロート TEMP = *(A + I);
 52である      *(A + I)= * A;
 53である      * A = TEMP;
 54である     
55      TEMP = *(A + J)、
 56である      (A + J * )= *(A + N- 1 57である      *(A + N- 1)= TEMP;
 58  }
 59  
60  空隙出力(フロート * A、INT N-)
 61である {
 62がある     ためINT I = 0 ; I <N- ; I ++)のprintf(" %の7.2f "、* A ++ );
 63     printf(" \ n個" );
64 }

結果:

 

おすすめ

転載: www.cnblogs.com/bboykaku/p/12498409.html