zoukankan      html  css  js  c++  java
  • PHP数组练习

    题目:

    1、跳水比赛,8个评委打分,运动员的成绩是8个成绩去掉一个最高分和去掉一个最低分。剩下6个分数的平均分就是最后得分。使用一维数组实现打分功能。

    2、并且把最高分和最低分的评委找出来。

    解决方案:

    第一个页面:

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
    </head>
    <body>
        <h1>请裁判输入分数</h1>
            <form action="result02.php" method="post">
                裁判1<input type="text" name ="one"><br/>
                裁判2<input type="text" name ="two"><br/>
                裁判3<input type="text" name ="three"><br/>
                裁判4<input type="text" name ="four"><br/>
                裁判5<input type="text" name ="five"><br/>
                裁判6<input type="text" name ="six"><br/>
                裁判7<input type="text" name ="seven"><br/>
                裁判8<input type="text" name ="eight"><br/>
                <input type="submit" value = "提交">
            </form>
    </body>
    </html>

    第二个页面:result02.php

    <?php
        
        //接收数据
            $p1=$_REQUEST['one'];
            $p2=$_REQUEST['two'];
            $p3=$_REQUEST['three'];
            $p4=$_REQUEST['four'];
            $p5=$_REQUEST['five'];
            $p6=$_REQUEST['six'];
            $p7=$_REQUEST['seven'];
            $p8=$_REQUEST['eight'];
            
            //把每个人输入的值 放入到数组中
            $arr = array($p1,$p2,$p3,$p4,$p5,$p6,$p7,$p8);
    
            //print_r($arr);
            //取出最大和最小的值
            $p_max=max($arr);
            $p_min=min($arr);
            //print_r($arr);
            //echo $p_max,$p_min;
            //echo "<br />";
            //定义变量计算总分
            $total=0;
    /*
            for($i=0;$i<count($arr);$i++){
                //echo $arr[$i]."<br />";
                $total+=$arr[$i];        
            }
    */
            foreach($arr as $v){
                
                $total+=$v;
            }
            //echo $total."<br/>";
            //减去最高最低分,最后得分
            //平均分
            //round函数 保留小数位||这是四舍五入法保留3位小数
            $last=($total-max($arr)-min($arr))/(count($arr)-2);
            //$last=($total-max($arr)-min($arr));
            echo '除去最高分和最低分的最后得分为:'.($total-max($arr)-min($arr))."<br/>";
            echo '除去最高分和最低分的最后得分的平均分为:'.round($last,3)."<br/>";
    
            //找出最大值和最小值对映的key :array_search函数.
            $max_k=array_search(max($arr),$arr);
            $min_k=array_search(min($arr),$arr);
            echo '最高分是第'.($max_k+1).'评委打'.max($arr).'分<br />';
            echo '最低分是第'.($min_k+1).'评委打'.min($arr).'分<br />';
    
    ?>
  • 相关阅读:
    cf B. Sereja and Suffixes
    cf E. Dima and Magic Guitar
    cf D. Dima and Trap Graph
    cf C. Dima and Salad
    最短路径问题(floyd)
    Drainage Ditches(网络流(EK算法))
    图结构练习—BFSDFS—判断可达性(BFS)
    Sorting It All Out(拓扑排序)
    Power Network(最大流(EK算法))
    Labeling Balls(拓扑)
  • 原文地址:https://www.cnblogs.com/pwm5712/p/2966340.html
Copyright © 2011-2022 走看看