注册 登录
编程论坛 ASP技术论坛

select case的问题

wxm198427 发布于 2008-10-15 09:03, 1545 次点击
我这样写对吗?if qq<>"" then
select case  qq
case     qq>=90 and qq<=100
response.write "优秀"
case     qq>=70 and qq<90
response.write "良好"
case     qq>=60 and qq<70
response.write "及格"
case   else
response.write "不及格"
end select
end if
%>
肯定是错误的,那该怎么样判断呢?请各位赐教……
12 回复
#2
gupiao1752008-10-15 09:36
晕倒!
晕倒!你运行过没有,怎么就知道肯定是错的呢??
不过我感觉用直接用IF 结构就好了,不必要加SELECT CASE结构!
#3
孤独冷雨2008-10-15 09:40
if qq<>"" then
select case  qq
case 90,91,92,93,、、、100
response.write "优秀"
case 70,71,、、、89
response.write "良好"
case 60,61,62,、、69
response.write "及格"
case   else
response.write "不及格"
end select
end if
%>
#4
gupiao1752008-10-15 09:42
[bo][un]孤独冷雨[/un] 在 2008-10-15 09:40 的发言:[/bo]

if qq"" then
select case  qq
case 90,91,92,93,、、、100
response.write "优秀"
case 70,71,、、、89
response.write "良好"
case 60,61,62,、、69
response.write "及格"
case   else
response.wri ...


啊,这样写,如果遇到上千上万的数字,那不是要累死吗?
#5
wxm1984272008-10-15 09:47
我也觉得啊,要是上千万呢?楼上的兄弟的做法在小数字是行的,但是兄弟还忽视了小数啊,要是我的得分是80。5怎么办啊,那不是就遗漏了,所以我觉得行不通!!!还有2楼的兄弟,因为我运行过,错误了,所以我就说错误了啊,不信兄弟去试试…………

[[it] 本帖最后由 wxm198427 于 2008-10-15 09:51 编辑 [/it]]
#6
wxm1984272008-10-15 09:48
回复 2# gupiao175 的帖子
不是说用IF不好,主要是要是条件多了,那个END IF都很难控制,那个嵌套啊,很累的知道吗?
#7
孤独冷雨2008-10-15 09:53
[bo][un]wxm198427[/un] 在 2008-10-15 09:47 的发言:[/bo]

我也觉得啊,要是上千万呢?楼上的兄弟的做法在小数字是行的,但是兄弟还忽视了小数啊,要是我的得分是80。5怎么办啊,那不是就遗漏了,所以我觉得行不通!!!还有2楼的兄弟,因为我运行过,错误了,所以我就说错误 ...

你硬是要用SELECT CASE 没办法。你那想法是IF的写法不是SELECT CASE的写法!
#8
永夜的极光2008-10-15 09:58
你的qq是一个什么类型的变量?
#9
gupiao1752008-10-15 09:59
[bo][un]wxm198427[/un] 在 2008-10-15 09:48 的发言:[/bo]

不是说用IF不好,主要是要是条件多了,那个END IF都很难控制,那个嵌套啊,很累的知道吗?

恩,兄弟,我知道了,我会继续关注,向你学习,多多指教!
#10
lele20072008-10-17 17:04
select case qq
'----------------------------------
  case ""
    response.write "不能为空"
'----------------------------------
  case else
'----------------------------------
    if qq>=90 and qq<=100 then
      response.write "优秀"
    elseif qq>=70 and qq<90 then
      response.write "良好"
    elseif qq>=60 and qq<70 then
      response.write "及格"
    else
      response.write "不及格"
    end if
'----------------------------------
end select



-------------------------------------------------------------------
发表下意见,学习……
#11
hmhz2008-10-17 18:01
程序代码:

<%
if qq<>"" then
if qq>=90 and qq<=100 then
    response.write "优秀"
elseif qq>=70 and qq<90 then
    response.write "良好"
elseif qq>=60 and qq<70 then
    response.write "及格"
elseif qq<60 then
    response.write "不及格"
end if
end if
%>
#12
nicechlk2008-10-17 23:53
少量的简单的判断用if。。。then优先
大量的复杂的,用select。。case优先,没什么可争得。
#13
yms1232008-10-18 00:00
[bo][un]wxm198427[/un] 在 2008-10-15 09:03 的发言:[/bo]

我这样写对吗?if qq"" then
select case  qq
case     qq>=90 and qq=70 and qq=60 and qq
肯定是错误的,那该怎么样判断呢?请各位赐教……

这种情况只能用if语句select case 语句只能对常量做判断,不能对表达式作判断的。
1