php语言编写switch判断成绩代码。分别输出优秀、良好、中等、及格和不及格。

为什么不论我输的成绩是多少,结果都是优秀呢?代码如下:<?phpswitch($score=43){case"$score>=90&&$score<=100":echo"... 为什么不论我输的成绩是多少,结果都是优秀呢?代码如下:
<?php
switch ($score=43)
{
case "$score>=90&&$score<=100":
echo"优秀<br>";
break;
case "$score>=80&&$score<90":
echo"良好<br>";
break;
case "$score>=70&&$score<80":
echo"中等<br>";
break;
case "$score>=60&&$score<70":
echo"及格<br>";
break;
case "$score>=0&&$score<60":
echo"不及格<br>";
break;
default:
echo"成绩输入错误<br>";
break;
}
?>
展开
 我来答
YX我爱吃绿豆饼
2013-09-20 · 超过47用户采纳过TA的回答
知道小有建树答主
回答量:98
采纳率:0%
帮助的人:99.3万
展开全部
<?php
switch ($score=43) // 这里不能放表达式的
{
case "$score>=90&&$score<=100": // 这里好像也不能这样
echo"优秀<br>";
break;
case "$score>=80&&$score<90": // 这里好像也不能这样
echo"良好<br>";
break;
case "$score>=70&&$score<80": // 这里好像也不能这样
echo"中等<br>";
break;
case "$score>=60&&$score<70": // 这里好像也不能这样
echo"及格<br>";
break;
case "$score>=0&&$score<60": // 这里好像也不能这样
echo"不及格<br>";
break;
default:
echo"成绩输入错误<br>";
break;
}

// 我觉得判断成绩的,最好用 if 语句,因为 switch 是要具体捕捉某一个值的,不是很适用于大范围的判断

// 还有的是,从输入框输入的是一个字符串,虽然你输入的是数字,但它也会当作字符串来处理

// 有说得不对的,请见谅,,,,
?>
fwfwt
2013-09-20 · TA获得超过104个赞
知道小有建树答主
回答量:170
采纳率:0%
帮助的人:80.7万
展开全部
格式错误了,应该是这样的:
<?php
switch ($score)
{
case 0:
"$score>=90&&$score<=100":
echo"优秀<br>";
break;
case 1:
"$score>=80&&$score<90":
echo"良好<br>";
break;
case 3:
"$score>=70&&$score<80":
echo"中等<br>";
break;
case 4:
"$score>=60&&$score<70":
echo"及格<br>";
break;
case 5:
"$score>=0&&$score<60":
echo"不及格<br>";
break;
default:
echo"成绩输入错误<br>";
}
?>
因为我这里没有PHP环境所以也就没测试,但应该就是这样的了,。
更多追问追答
追问
可是成绩是要从哪里来的?我是初学者,除了在代码中自己输入成绩还不会其他的!而且我刚试过了不写入成绩,结果还是优秀。。。。为啥呢?
追答
=90 && $score";
break;
case $score>=80 && $score";
break;
case $score>=70 && $score";
break;
case $score>=60 && $score";
break;
case $score>=0 && $score";
break;
default:
echo"成绩输入错误";
}
?>
好久没用SWITCH了,都有点忘记格式了,这个有用了,刚安装环境,亲测过的,。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
宝露露好友
2020-09-26
知道答主
回答量:1
采纳率:0%
帮助的人:577
展开全部
$newScore = intval($score/10);
switch $newScore {
case 9:

echo '优秀';

break;

case 8:

case 7:

case 6:

echo '良好';

break;

default:

echo '不及格';

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
TheThinKing
2013-09-20 · TA获得超过552个赞
知道小有建树答主
回答量:599
采纳率:100%
帮助的人:480万
展开全部
case 后面的条件不要加引号,再一个你那个switch($score=43)是怎么回事?调试?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
?>

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式