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

关于猜数字游戏asp代码的疑问???

cainiao158 发布于 2007-10-14 23:39, 1185 次点击

guessnumber.asp内如下!!!

<%@ LANGUAGE = VBScript %>
<% Option Explicit %>
<Html>
<title>猜数字游戏</title>
<body>
<%
Response.Expires = 0
%>
<%
dim GuessNum
on error resume next
GuessNum=Request("Number")
if GuessNum="" then GuessNum="0" End if
GuessNum=Clng(GuessNum)

Session("Count")=Session("Count") + 1
if Session("Count") < 10 and GuessNum <> session("Number") then

%>

<form action="guessNumber.asp">
<input type="text" name="Number">
<input type="submit" value="提交">
</form>
<hr>
<%
end if
if GuessNum<0 or guessNum>100 then
Response.write "请输入1~100之间的整数"
elseif GuessNum=0 then
session("Count") = 0
Randomize
session("Number") = Int(rnd * 100 + 1)
Response.write "请输入1~100之间的整数"
elseif GuessNum > session("Number") then
response.write "你猜的太大了"
elseif GuessNum < session("Number") then
response.write "你猜的太小了"
elseif GuessNum = session("Number") then
response.write "祝贺你,猜对了"
end if

Response.write "<br>共猜了" & Session("Count") & "次"
if Session("Count")=10 then
Response.write "答案是" & Session("Number")
end if
%>
<a href="guessnumber.asp?Number=0">重新猜</a>
</body>
</html>

本人是asp的初学者,在网上的一个教程上看到的这段代码,首先第一次标示红色的那段代码有什么作用???,我觉得他没有起到什么作用??,然后第二次标红色代码的那段??我不明白为什么要用那样的算法??有什么作用
然后就是最后了,number=0有什么作用????不像是传递数值?????

5 回复
#2
永夜的极光2007-10-15 07:49
第一段红色 是为了让你只能猜10次
第二段是产生一个1~100范围内的随机数
#3
cainiao1582007-10-15 12:16
if Session("Count") < 10 and GuessNum <> session("Number") then 这个确实是让它猜10次!!!可是他没有执行任何语句,就end if了,本人是菜鸟,谁能给我解释,希望老鸟完整的看完代码再给我解释??谢谢
#4
永夜的极光2007-10-15 12:19
如果不到10次
<form action="guessNumber.asp">
<input type="text" name="Number">
<input type="submit" value="提交">
</form>
这段代码会显示一个提交按钮,如果超过10次,这个按钮就不显示了,也就是不能再提交了

当然咯,这样做的不允许提交并不保险。
#5
cainiao1582007-10-15 12:25
哦,明白点了,谢谢,还有那个<a href="guessnumber.asp?Number=0">重新猜</a> 那个NUmber=0,有什么作用!!!
#6
永夜的极光2007-10-15 12:34
看看这句
GuessNum=Request("Number")

Number=0作为参数传递个网页,然后网页通过request获得了这个参数的值,也就是那个0,这个0又赋值给了GuessNum,也就是猜的次数。

说了半天其实就是把猜的次数赋值为0,算是重新开始。
1