php怎麼用for迴圈求陣列最大值

2022-09-19 22:00:24

步驟:1、用array_values()將陣列轉為索引陣列;2、定義了1個變數來存放最大值,語法「$m=$arr[0];」;3、利用for語句遍歷陣列,語法「for($i=0;$i<陣列長度;$i++){...}」;4、迴圈體中,不斷將「$m」與陣列每個值進行比較,如果值大於「$m」就將該值賦值給「$m」即可,語法「if($arr[$i]>$m){$m=$arr[$i];}」。

php零基礎到就業直播視訊課:進入學習
程式設計師必備介面測試偵錯工具:

本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦

在php中,可以通過在for迴圈中,不斷將$max與陣列每個值($arr[$i])比較;如果大於$max就將該元素賦值給$max即可。

實現步驟:

步驟1:使用array_values()函數將陣列轉為索引陣列

array_values()函數的作用是返回陣列中所有元素的值,使用起來非常簡單,只有一個必選引數$array,就可以返回一個包含給定陣列中所有值的陣列,但不保留鍵名。被返回的陣列將使用索引陣列的形式,陣列的索引從 0 開始且以 1 遞增。

array_values($array)

步驟2:定義了1個變數$max來存放最大值

$max = $arr[0];

步驟3:利用for語句遍歷陣列

for ($i = 0;$i< 陣列長度;$i++){//迴圈陣列
    //迴圈體語句塊;
}

步驟4:在迴圈體中,不斷將$max與陣列每個值($arr[$i])比較,如果大於$max就將該元素賦值給$max

  • 如果$arr[$i]比$max大,則將$max值賦給$secMax,把$arr[$i]賦給$max,

if ($arr[$i] > $max){
    $max = $arr[$i];
}

這樣不斷比較下去,就可以確保$max存放著陣列最大值即可

實現範例程式碼:

<?php
header('content-type:text/html;charset=utf-8');
function takeNum($array){
	$arr=array_values($array);
	
	//定義了1個變數$max來存放最大值
    $max = $arr[0];
	for ($i = 0;$i< count($arr);$i++){//迴圈陣列
	
		if ($arr[$i] > $max) {
			$max = $arr[$i];
		}
	}
		echo "最大值為".$max;
}


$array = array(1=>"1","a"=>"5",2=>"3","b"=>0,"c"=>"4");
var_dump($array);
takeNum($array);
?>

測試一下:

定義了下面一個陣列,呼叫takeNum($array)函數來看看輸出情況

$array = array(0,5,1,429,18,21,52,2,52,9,3,"5");
var_dump($array);
takeNum($array);

1.png

定義了下面一個陣列,呼叫takeNum($array)函數來看看輸出情況

$array = array(1=>"1","a"=>"5",2=>"3","b"=>0,"c"=>"4");
var_dump($array);
takeNum($array);

2.png

推薦學習:《》

以上就是php怎麼用for迴圈求陣列最大值的詳細內容,更多請關注TW511.COM其它相關文章!