ASP复习题Word文档格式.docx
《ASP复习题Word文档格式.docx》由会员分享,可在线阅读,更多相关《ASP复习题Word文档格式.docx(20页珍藏版)》请在冰豆网上搜索。
//127.0.0.1/temp/1-2.asp
//localhost/asptemp/chapter1/temp/1-2.asp
//127.0.0.1/asptemp/chapter1/temp/1-2.asp
(10)以1.5.5节的示例为基础,假如现在在C:
\inetpub\wwwroot\asptemp\chapter1\temp下又建立了一个子文件夹temp,其中建立了一个ASP文件1-3.asp,则浏览方式正确的是:
//localhost/temp/temp/1-3.asp
//127.0.0.1/temp/temp/1-3.asp
//localhost/asptemp/chapter1/temp/temp/1-3.asp
D.http:
//127.0.0.1/asptemp/chapter1/temp/temp/1-3.asp
解释:
AB利用了建立的虚拟目录,CD没有用到虚拟目录。
2.问答题
(1)某同学开发了一个显示来访时间的ASP文件,存放在C:
\inetpub\wwwroot下,然后在Windows资源管理器中双击该文件,却不能正常显示,请问是什么原因?
ASP文件是不能直接双击运行的,必须通过浏览器访问,由服务器端来解释执行为标准的HTML代码,然后才可以显示在浏览器中。
(2)在1.4.3节中讲的是如何访问ASP文件,如果希望访问HTML网页文件,可以用类似的方法吗?
可以。
对于HTML文件,服务器端找到到该文件后,直接发送给客户端即可。
(3)想一想,把一个HTML网页文件直接更改扩展名为.asp行不行?
相当于一个不含有任何动态代码的ASP文件,运行时服务器端也会对其进行解释执行,只不过实际上没有代码需要解释执行而已。
3.实践题
(2)请在文件夹C:
\Inetpub\wwwroot\asptemptj\chapter1下新建一个asp文件,在页面上显示来访日期(日期函数为Date())。
打开EditPlus,在其中输入清单date所示的程序代码,然后将其保存到C:
\Inetpub\wwwroot\asptemptj\chapter1文件夹下,名称为date.asp。
清单datedate.asp显示来访日期
<
html>
head>
title>
一个简单的ASP程序<
/title>
/head>
body>
h1align="
center"
>
欢迎您光临我的主页<
/h1>
%
Dima'
声明一个变量
a="
您来访的日期是:
"
&
Date()'
给变量赋值,其中Date是日期函数
Response.Writea'
在页面上输出变量a的值
%>
/body>
/html>
保存完毕后,打开浏览器,在其中输入http:
//localhost/asptemptj/chapter1/tj1-1.asp即可。
第3章VBScript基础知识
习题3
(1)下列哪一个变量名称是正确的?
答案:
B
A.1_abB.ab_1C._abD.ab?
(2)在一段程序中a是一个变量,那么"
a"
是:
答案:
D
A.变量B.直接常量C.字面常量D.符号常量
(3)下面哪条语句可以正确执行?
(注:
第四句我的主页两边是中文引号)
A.Response.Write"
我的主页<
B.Response.Write"
h1align='
center'
C.Response.Write"
D.Response.Write"
“我的主页”<
BCD
在两个双引号中再次用到双引号时,可以用单引号或两个双引号来代替。
(4)执行语句a="
6"
后,变量a的数据子类型是?
A
A.字符串B.日期C.数值D.布尔
(5)执行语句a="
2008-8-8"
(6)假设变量a=5、b=3,则执行语句c="
a>
b"
后,变量c的数据子类型是?
A.字符串B.日期C.数值D.布尔答案:
(7)语句a="
abc"
="
运行完毕后,变量a的数据子类型是?
A.数值B.字符串C.布尔D.日期答案:
C
右侧是一个比较运算,结果是True,然后再赋值给a
(8)执行语句a=3:
a=a+5后,变量a的值是:
A.3B.5C.8D.出错答案:
ASP中,冒号(:
)是用来做语句分隔的,利用它就可以将两行或更多行语句写在一行。
因此a=3:
a=a+5就等价于a=3
a=a+5结果自然就是8.
(9)已知x=123,那么执行语句y=x\10Mod10后,变量y的值是?
A.0B.1C.2D.3答案:
这是一个算术运算,运算顺序为从左至右,x\10表示x整除10后的值,为12,然后再计算12Mod10,表示12除以10的余数,结果为2.
(10)已知a="
ab"
,那么执行语句b="
cd'
a&
"
ef"
后,变量b的值是?
(提示:
请注意题目和答案中的空格)
A."
abef"
B."
abef"
C."
cdabef"
D."
cdabef"
(11)下面的语句执行完毕后,变量a、b、c、d的值分别是?
%a="
1"
+"
:
b="
+1:
c="
d="
1%>
A."
11"
、"
、2、"
C.2、2、"
D."
、2、2答案:
做算术运算+的时候,如果有一个操作数是数值型,另一个是可以转换为数值的字符串,则会自动转换为数值,并执行相加运算。
但是如果用&
,则任何时候都是执行连接运算。
(12)请问表达式Not(6+3<
5+2)的值是?
A.TrueB.FalseC.9D.无法计算答案:
(13)请问Int(3.45)和Int(-3.45)的值分别是什么?
A.4、-4B.3、-4C.3、3D.3、-3答案:
Int:
返回数的整数部分,且对于负数,将返回小于或等于number的第一个负整数。
(14)执行语句a=Int(10*Rnd())后,则a的值不可能出现的有?
A.0B.1C.10D.11答案:
CD
Rnd()返回一个大于等于0且小于1的随机数。
(15)在取整时按四舍五入进行的函数是?
A.IntB.FixC.RoundD.CInt答案:
(16)请问Mid("
八千里路云和月"
3,2)的返回值是什么?
千里"
里路"
里"
D."
路云"
解释:
表示从第三个字符开始取两个字符。
(17)执行语句a=InStr(Trim(Replace("
abcdef"
"
c"
)),"
)后,变量a的值是?
A.0B.1C.4D.5答案:
注意Replace("
)是将字符c替换为空,而不是空格。
Instr()是返回第二子串在第一个串中第一次出现的位置。
(18)函数DateDiff("
m"
#2008-8-8#,#2008-10-1#)的返回值是?
A.1B.2C.54D.5答案:
(19)对于数组a(3,4),函数UBound(a,2)的值是:
A.1B.2C.3D.4答案:
UBound()返回数组的指定维数的最大可用下标.
(20)假如变量a的值是"
100"
,则IsNumeric(a)和VarType(a)的值分别是?
A.True、2B.True、8C.False、2D.False、8答案:
IsNumeric()会先转化变量a的类型为数值,如果能转化,就为True。
而VarType函数只返回当前的类型,而"
当前确实是字符串。
(21)假如变量a的值是"
,则IsDate(a)和VarType(a)的值分别是?
同上题。
(22)执行语句a=Chr(Asc("
ABC"
))后,则a的值是:
A"
C.65D.出错答案:
Asc()函数返回与字符串的第一个字母对应的ANSI字符代码,而Chr函数返回该ANSI代码对应的字符,所以最后为"
。
(23)退出Do循环的语句是?
A.ExitForB.ExitDoC.ExitSubD.ExitFunction答案:
(24)在示例3-11和3-12中,循环结束后,I的值分别是多少?
A.100、100B.101、101C.100、101D.101、100答案:
(25)以下哪些语句可以嵌套使用?
A.For…NextB.Do…LoopC.SelectCaseD.If…Then…Else
ABCD
(1)在页面A中定义的变量可以在页面B中引用吗?
答案:
一般是不可以的,但是如果把A页面包含在B中,就是可以的。
(5)在For…Next循环中,可以给计数器变量赋值吗?
虽然也是可以的,但是不建议更改计数器变量,因为很容易引起变量值的混乱。
(6)如何将两个变量的值互换?
用一个中间变量)
首先定义一个中间变量,将第一个变量的值赋给中间变量,然后再将第二个变量的值赋给第一个变量,最后将中间变量的值赋给第二个变量,这样就实现了两个变量值的互换。
(1)请在你的个人主页上添加时间显示信息,显示当天的日期、时间及星期几。
<
习题3-2-
(1)<
Response.WriteDate()&
&
nbsp;
Time()
SelectCaseWeekday(Date())
Case1
Response.Write"
星期日"
Case2
星期一"
Case3
星期二"
Case4
星期三"
Case5
星期四"
Case6
星期五"
Case7
星期六"
EndSelect
%>
/head>
/html>
(2)请编写程序段,判断当天日期,如果是25日,则显示“请注意,明天可能有病毒发作”。
<
%
IfDay(Date())=25Then
请注意:
明天可能有病毒发作。
EndIf
/body>
实验四Request和Response对象
(1)对于Request对象,如果省略集合,如Request("
strName"
),将按什么顺序依次检查是否有信息传入?
A.Form、QueryString、Cookies、ServerVariables、ClientCertificate
B.QueryString、Form、Cookies、ServerVariables、ClientCertificate
C.Cookies、QueryString、Form、ServerVariables、ClientCertificate
D.Form、QueryString、Cookies、ServerVariables、ClientCertificate
(2)Request对象的QueryString、Form、Cookies集合获取的数据子类型分别是?
A.数字、字符串、字符串B.字符串、数字、数字
C.字符串、字符串、字符串D.必须根据具体值而定答案:
(3)在表单中,下列哪个属性用于设定表单的提交方法?
A.methodB.actionC.POSTD.GET答案:
(4)若表单提交时采用GET方法,则下面哪种集合可以获取表单元素的值?
A.Request.Form("
元素名"
)B.Request.QueryString("
)
C.Response.Form("
)D.Response.QueryString("
)答案:
(5)下面哪种集合可以获取查询字符串中的信息?
A.Response("
)B.Request("
)
C.Request.Form("
)D.Request.QueryString("
BD
(6)请问下面语句执行完毕后,页面上显示内容是什么?
%Response.Write"
ahref='
'
新浪<
/a>
A.新浪B.<
C.新浪(超链接)D.错误信息答案:
(7)请问下面程序段执行完毕,页面上显示的内容是什么?
北京"
上海"
A.北京上海B.北京(换行)上海
C.北京D.错误信息
当使用简写方式输出时,每一句两边都要加上<
%和%>
(8)请问下面程序段执行完毕,页面上显示的内容是什么?
Response.Write"
Response.Flush:
Response.Write"
Response.Clear
Response.End:
d"
A.acB.cdC.bdD.ad
Flush方法会立即输出内容;
Clear方法会清空缓冲区中的内容;
End方法会结束输出。
(9)Response对象的什么方法可以将缓冲区中的页面内容立即输出到客户端?
A.WriteB.EndC.ClearD.Flush答案:
(10)下列哪个集合可以返回客户端IP地址?
AB
A.Request("
REMOTE_ADDR"
)B.Request.ServerVariables("
C.Request.ServerVariables("
IP"
)D.Request.ServerVariables("
LOCAL_ADDR"
2.简答题
(1)假如变量a="
,那么Request(a)和Request("
)返回值一样吗?
不一样。
因为用代入法,Request(a)是获得名称为b的变量的值,而Request("
)则是获得名称为a的变量的值。
(2)当表单分别以POST方法和GET方法提交时,获取数据的方法有什么区别?
用POST
方法提交表单,获取数据用的是Request.Form方法;
而用GET
方法提交表单,获取数据用的是Request.QueryString方法。
(3)请简述Response的Write方法的两种写法的区别及注意事项。
两种写法分别为Response.write和<
%=%>
前者多用于在VBScript代码中,用来向客户端输出服务器端的信息;
后者则多用于大量HTML代码中嵌入少量VBScript代码的时候。
(4)请简述Redirect方法的工作原理?
Redirect是指将网页重新定向到另一个新的网址,该定向发生在客户端,当执行到该语句时,客户端浏览器就会向相应的服务器端发出一个请求,然后该服务器端就会返回这个新的页面给客户端。
(5)请问Redirect方法和超链接的区别是什么?
两者都可以引导用户至另一个页面,但是超链接必须要用户单击超链接才行,而Redirect可以自动引导用户至另一个页面。
(6)请问当使用Redirect方法时,为什么有时要在文件开头加“Reponse.Buffer=True”语句?
在Windows2000以上系统中一般需要加吗?
因为如果Response.Buffer=False,就表示将页面直接输出到客户端,那么如果已经输出了部分页面内容到客户端,又想重定向到另一个页面,这是不允许的。
而令Buffer等于True后,将把页面先输出到缓冲区,在缓冲区中则可以随时重定向页面,Windows2000以上操作系统中则默认为True,所以Windows2000以上系统中一般不需要加。
(7)本章中都有哪些方法可以将一个变量从一个页面传递到另一个页面?
可以利用表单提交和在URL地址后面加上变量进行传递,也可以使用Cookie传递变量。
(2)请开发一个页面,让用户通过下拉列表框选择自己想要访问新浪、搜狐还是网易网站,用户提交选择结果后自动打开该网站。
导航<
bodyleftmargin="
快速导航<
formname="
frmUserReg"
method="
POST"
action="
>
p>
请选择您要访问的网站:
selectsize="
name="
sltsite"
<
optionvalue="
/option>
搜狐<
网易<
/select>
palign="
inputtype="
submit"
btnSubmit"
value="
提交"
/form>
IfRequest.Form("
)<
Then
Response.redirectRequest.Form("
(3)请开发一个页面,其中可以输入姓名和年龄,并选择有效期为1周、1月或1年。
提交表单后将姓名和年龄保存到Cookie中,并按选择设置有效期。
formaction="
post"
请输入姓名<
text"
user_name"
请输入年龄<
old"
请选择Cookie有效期
sltDate"
optionvalue=7>
1周<
optionvalue=30>
1月<
optionvalue=365>
1年<