很多站长朋友们都不太清楚php成绩排行,今天小编就来给大家整理php成绩排行,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php 用foreach排名学生成绩 2、 php如何实现分数排名,判断该学生第几名,如图 3、 用PHP函数排学生成绩问题 php 用foreach排名学生成绩php 用foreach排名学生成绩
总成绩用 $total = array_sum($score); 平均成功 $avg = array_sum($score) / count($score); //foreach实现 $total = 0; foreach($score as $v){ $total += $v; } echo $total; echo $total / count($score);//平均
php如何实现分数排名,判断该学生第几名,如图先根据票数倒序查询票数表,sql语句大概是
"SELECT 学生id,票数 FROM 票数表 ORDER BY 票数 DESC";假设得到的结果集赋值为 $res,
再用PHP遍历,
$student = array();
foreach ($res as $key => $value) {
$student[$value['学生id']] = $key +1;
}
最后就可以得到student排名数组,键是学生的id,值就是学生的排名。
用PHP函数排学生成绩问题<?php
/*
1.学生成绩0-59不及格,60-70 普通成绩 70-80 良好 80-90 优秀 90-100 优异。现在有三个学生a,b,c,成绩分别是50分 80分 95分,判断这三个学生分别属于哪类。
首先,各类别分数设定不严谨,正确应该为:0-59不及格,60-69普通,70-79良好,80-89优秀,90-100优异
*/
echo "学生a类型为:" . getLevel(50) . '<br />'; // 学生a,方便演示加了一个 <br /> 换行符
echo "学生b类型为:" . getLevel(80) . '<br />'; // 学生b,方便演示加了一个 <br /> 换行符
echo "学生c类型为:" . getLevel(95) . '<br />'; // 学生c,方便演示加了一个 <br /> 换行符
/*
2.班级有一百名学生,分数区间0-100分。随机生成一百位学生的成绩,学生名称S1-----S100,学生成绩0-59不及格,60-70 普通成绩, 70-80 良好, 80-90 优秀, 90-100 优异,然后判断该学生分数所在档次。
同样,各类别分数设定不严谨,正确应该为:0-59不及格,60-69普通,70-79良好,80-89优秀,90-100优异
*/
// 获取随机生成分数数组
$scores = getRandscore(100);
// 循环处理类型
foreach ($scores as $key => $value) {
echo "学生S{$key}分数为:" . $value . ",类型为:" . getLevel($value) . '<br />'; // 方便演示加了一个 <br /> 换行符
}
/* 定义自定义函数 */
/**
* 随机生成分数
*
* @param int $number 学生人数
* @return array
*/
function getRandscore($number = 0) {
// 定义数组
$scores = array();
// FOR 循环
for ($i = 1; $i <= $number; $i++) {
$scores[$i] = rand(0, 100);
}
// 输出结果
return $scores;
}
/**
* 按分数获取等级
*
* @param int $score 分数
* @return string
*/
function getLevel($score = 0) {
if ($score <= 0) {
$i = 1; // 如果小于或等于0分,直接设定为第一级别,不及格
} elseif ($score >= 100) {
$i = 5; // 如果大于等于100分,直接设定为最高级别,优异
} else {
// 定义等级分数线,格式 array(等级1 => array(当前级别最低分数,当前级别最高分数))
$_score = array('1' => array(0, 59), '2' => array(60, 69), '3' => array(70, 79), '4' => array(80, 89), '5' => array(90, 100));
// 其他分数进行FOR循环判断,$i 值为 1 - 5
for ($i = 1; $i < 6; $i++) {
if ($score >= $_score[$i][0] $score <= $_score[$i][1]) {
break; //中断循环判断
}
}
}
// 定义等级文字
$_level = array( '1' => '不及格', '2' => '普通', '3' => '良好', '4' => '优秀', '5' => '优异');
// 输出结果
return $_level[$i] ? $_level[$i] : '其他';
}
关于php成绩排行的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php成绩排行 php学生成绩排序的详细内容...