php数组例题解析:打分、本页显示、四舍五入、小数保留

1、跳水比赛,8个评委打分。运动员的成绩是8个成绩去掉一个最高分,去掉一个最低分,剩下的6个分数的平均分就是最后得分。使用一维数组事项打分功能。求平均分并找出最高分的评委和最低分的评委。(保留2位小数)

代码如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
</head>
<body>
<?php   
//评委所对应分数:
$arr = array('a1'=>13,'a2'=>12,'a3'=>11,'a4'=>14,'a5'=>17,'a6'=>16,'a7'=>56,'a8'=>67,);

$d = max($arr);  //返回一个数组中的最大值,或者几个指定值中的最大值。
$e = min($arr);  //返回一个数组中的最小值,或者几个指定值中的最小值。
//找出评分最大的和最小的评委及其评分
foreach($arr as $x=>$x_value)
{	
	if($d == $x_value)
	{
		echo "判分最大的裁判为:".$x."打分为:".$x_value."<br>";
		$d1 = $x;
		$e1 = $x_value;
	}
	elseif ($e == $x_value)
	{
		echo "判分最小的裁判为:".$x."打分为:".$x_value."<br>";
		$d2 = $x;
		$e2 = $x_value;
	}
} 

unset($arr[$d1]);   //销毁数组元素
unset($arr[$d2]);
$a = 0; 
//求总分
foreach($arr as $x=>$x_value)
{
	echo "裁判".$x."打分".$x_value."<br>";
	$a = $a+"$x_value";
}
echo "总分为:".$a."<br>";
$average = ($a/6);
echo "未四舍五入的平均分为:".$average."<br>";

//round() 函数对浮点数进行四舍五入,可以自定义保留位数。
//语法:round(要舍入的值,小数点后的尾数,舍入模式);
$average = round($average,2);
echo "平均分为:".$average."<br>";
?>

</body>
</html>
2、在运动会上5个小孩比赛滑轮,滑完100米,分别用了10s,12s,57s,9s,14s,请编写程序,计算他们的平均时间?保留两位小数。

代码如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
</head>
<body>

<?php 
//接收用户提交的学生成绩
//@符号可以阻止非致命错误的提示
$grades1=@$_REQUEST['grade'];
//拆分,对成绩进行分割,变成数组表示
$grades=explode(" ",$grades1);
$allgrade=0;
foreach($grades as $key=>$key_value)  //遍历
{
	$allgrade+=$key_value;
}
$num=count($grades);
$average=($allgrade/$num);
?>

<h1>请输入5个小孩的成绩,用空格隔开</h1>
<!--实现了本页输出-->
<form action="asd.php" method="post">  
<!--加上value="<.?php echo "$grades1"; ?>"这句是为了计算后输入框中仍显示文本-->
<input type="text" name="grade" value="<?php echo "$grades1"; ?>"/>
<input type="submit" value="开始统计"/>
</form>
<form action="asd.php" method="get">
<!--value="<.?php echo "$average"; ?>"此句可以在此文本框中显示计算的结果-->
<input type="text" name="grade" value="<?php echo "$average"; ?>"/>
</form>
</body>
</html>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值