利用函数求十个学生的平均成绩,并求得低于平均成绩的学生个数。

解决方案 »

  1.   


    $arr = [98,56,66,75,88,90,83,79,59,30];
    $avg = array_sum($arr) / count($arr);
    echo $avg;//平均分$low = [];
    foreach($arr as $k=>$v){
    if($v < $avg){
    $low[] = $v;
    }
    }
    //另一种
    //$low = array_map(function($k) use($avg){
    // return $k < $avg ? $k : false;
    //},$arr);
    echo '<br>'.count(array_filter($low));
      

  2.   

    $arr = [98,56,66,75,88,90,83,79,59,30];
    $avg = array_sum($arr) / count($arr);
    echo $avg;//平均分
     
    $low = 0;
    foreach($arr as $k=>$v){
        if($v < $avg){
            $low++;
        }
    }
    echo $low; //低于平均分的个数
      

  3.   

    不用那么复杂吧,一条sql就可以了啊 select avg(score),max(score),min(score),id from student where id in(XXX)