中添加 border属性D 以上全都可以
10、关于网页中的图像,下列说法正确的是(C)
A 图像是由标签开始,由结束。
B 图像标签的 href属性用于指定图像链接到的URL。
C src 属性的值是所要显示图像的URL。
D 以上全都是错的。
11、配置IIS时,设置站点的主目录的位置,下面说法正确的是(D)。
A 只能在本机的c:\\inetpub\\wwwroot文件夹。
B 只能在本机操作系统所在磁盘的文件夹。
C 只能在本机非操作系统所在磁盘的文件夹。
D 以上全都是错的。
12、安装web服务器程序后,在地址栏输入(D),可以访问站点默认文档。
A 在局域网中直接输入服务器的IP地址。
B 在局域网中输入服务器所在计算机的名称
C 如果是在服务器所在的计算机上,直接输入http://127.0.0.1
D 以上全都是对的
13、关于IIS的配置,下列说法错误的是(B)
A IIS可以同时管理多个应用程序
B IIS要求默认文档的文件名必须为default或index,扩展名则可以是 .htm、.asp等已为服务器支持的文件扩展名。
C IIS可以通过添加Windows组件安装
D IIS不光能够管理web站点,也可以管理FTP站点。
14、关于ASP,下列说法正确的是(C)
A 开发ASP网页所使用的脚本语言只能采用VBScript。
B 网页中的ASP代码同html标记符一样,必须用分隔符”<”和”>”将其括起来。
C ASP网页,运行时在客户端无法查看到真实的ASP源代码。
D 以上全都错误。
15、下列说法错误的是(D)
A ASP在很大程度上依赖于脚本编程。
B 使用<%@ %>标记来指定ASP中默认使用的脚本语言。
C 在<%和%>之间的代码被视为默认脚本语言。
D 设置了默认脚本语言的ASP文件中不能再使用其他脚本。
16、关于VBScript,下列说法正确的是(A)。
A VBScript 只有一种数据类型。
B 可以使用 Dim、Private、Public和Const关键字声明变量。
C VBScript中,变量必须先声明再使用。
D 以上全都错误。
17、VBScript中,下列说法正确的是(B)
A 没有计算数的指数次方的运算符,但可以通过* 运算符实现。
B &运算符可以强制将任意两个表达式进行字符串链接。
C 表达式 16/5 的结果是1。
D 以上都正确
18、VBScript中,下列运算符优先级最高的是(B)
A 求余运算 (Mod)
B 负数 (-)
C 乘法和除法 (*, /)
D 字符串连接 (&)
19、如果a = Int(10*Rnd()),则a的值不可能是(D)
A 0
B 1
C 9
D 10
20、如果v = FormatNumber(10.123456,3),则v等于(C)。
A 10.1
B 10.12
C 10.123
D 以上都不对
21、下列表达式的值为-10的是(D)
A Int(-10.9)
B -Abs(-10.9)
C Fix(-9.9)
D Int(-9.9)
22、关于日期和时间函数,下列说法正确的是(D)。
A now函数可以返回客户端计算机当前的日期和时间值。
B 表达式Weekday(Date)将得到表示当前日期是星期几的英文字符,如星期日为“Friday”。
C Timer函数返回午夜 12 时以后已经过去的小时数。
D 表达式DateAdd("d", 10, Date)是表示当前日期的十天后。
23、赋值V=”6”并执行 a=IsNumeric(V)语句后,a 是(D)。
A 字符串型
B 日期型
C 数值型
D 布尔型
24、下列哪一个函数可以将日期转换为字符串?( C )
A Cdate
B CInt
C CStr
D CDbl
25、请问 Mid(“I am a student.”,9,2)的返回值是什么?( A )
A “tu”
B “st”
C “en”
D “nt”
26、下列说法正确的是(A)
A 执行UCase("Hello World")后,返回"HELLO WORLD"。
B 执行LCase("VBScript")后,返回 "vbsCRIPT"。
C 执行RTrim(" vbscript ")后,返回 "vbscript"。
D 执行Split("VBScriptXisxfun!", "x")后,返回包含“VBScriptXis”和“fun”的一维数组。
27、下列语句中,不能正常显示的是(B)
A Response.Write time
B Response.Write day
C Response.Write now
D Response.Write date
28、下面程序段执行完毕,页面上显示内容是什么?( D )
<%
="信息
"
="科学"
%>
A 信息科学
B 信息(换行)科学
C 科学
D 以上都不对
29、下面的语句不能输出内容到客户端的是(A)
A <% msgbox("输出内容") %>
B <%=Int(3.2)%>
C <% response.write v &"是一个字符串变量" %>
D <%=v & "输出内容"%>
30、关于Option Explicit 语句,下面说法正确的是(C)
A 可以在脚本的任何位置使用
B 强制要求类型转换时,必须采用显示转换。
C 强制要求脚本中的所有变量必须显式声明。
D 以上说法都不正确
31、关于For…Next语句,下面说法错误的是(B)
A 可以在循环中的任何位置放置一个Exit For语句。
B step的值必须是整数,默认为1。
C For i = 1 To 15 Step 4 ,这一行说明循环体最多可以执行4次。
D 计数变量I可以是变量或表达式。
32、关于VBScript 过程,下列说法错误的是(B)。
A call语句用于 Sub 或 Function 过程的调用。
B 调用Function 过程时call语句可以省略,但是调用sub过程时不可以省略。
C Function 函数可以有返回值。
D 使用 Exit Function 语句可以从 Function 过程中立即退出。
33、用于从客户端获取信息的ASP内置对象是(B)
A Response
B Request
C Session
D Application
34、下列不属于Response对象的方法的是(C)
A Write
B End
C abandon
D Redirect
35、Response对象的属性(D)可以用于表明页输出是否被缓冲。
A TotalBytes
B ContentType
C status
D Buffer
36、下列Response对象的用法错误的是(A)
A <% Response.Write 输出到浏览器信息 %>
B <% = "输出到浏览器信息" %>
C <% Response.End %>
D 以上全都正确
37、对于 Request 对象,如果省略获取方法,如 Request("user_name"),将按什么顺序依次检查是否有信息传入:(C)
A Cookies、QueryString、Form、Server Variables、ClientCertificate
B Form、QueryString、Cookies、Server Variables、ClientCertificate
C QueryString、Form、Cookies、Server Variables、ClientCertificate
D Form、QueryString、Cookies、Server Variables、ClientCertificate
38、QueryString获取方法、Form 获取方法获取的数据子类型分别是:(C)
A 数字、字符串
B 字符串、数字
C 字符串、字符串
D 必须根据具体值而定
39、下面程序段执行完毕,我们在浏览器中看到的内容是什么?( A )
<%
Response.Write "新浪"
%>
A 新浪
B 新浪
C 新浪
D 该句有错,什么也不显示
40、关于Session对象的属性,下列说法正确的是(C)
A Session的有效期时长默认为90秒,且不能修改。
B Session的有效期时长默认为20分钟,且不能修改。
C SessionID可以存储每个用户Session的代号,是一个不重复的长整型数字。
D 以上全都错
41、下面Session对象的使用中可以正确执行的是(B)
A <%Session.ScriptTimeout=20 %>
B <% Session.Timeout = 40 %>
C <%Session=nothing%>
D <% Response.Write("Session.SessionID") %>
42、下面属于Server 对象的方法的是(D)
A CreateObject
B HTMLEncode
C MapPath
D 以上全都是
43、使用下面哪一个关键字创建服务器组件的实例(B)
A Dim
B Set
C Var
D Private
44、下面程序段执行完毕,c的值是:(C)
<%
Application("a")=1
Application ("b")=2
c= Application ("a")+ Application ("b")
%>
A 12
B ab
C 3
D 以上都不对
45、在虚拟目录asp中有文件about.asp,若是在文件中显示该文件在服务器上的物理路径,则需要加入语句Response.Write( C )
A Server.MapPath("asp/about.asp")
B Server.MapPath("\\")
C Server.MapPath(request.servervariables("PATH_INFO"))
D 以上全都对
46、在同一个应用程序的页面 1 中添加 Server.ScriptTimeOut=300,那么在页面 2 中添加 c=Server.ScriptTimeOut,则c等于多少秒?(B)
A 60
B 90
C 300
D 以上都不对
47、下面程序段执行完毕,页面上显示内容是什么?(A)
<%
Dim strTemp
strTemp="user_name"
Session(strTemp)="张三"
Session("strTemp")="李四"
Response.Write Session("user_name")
%>
A 张三
B 李四
C 张三李四
D 语法有错,无法正常输出
48、如果string1="文字注释1
文字注释2",那么<% response.write Server.HTMLEncode( string1 )%>的输出结果为(C)
A 文字注释1
文字注释2
B 文字注释1 文字注释2
C 文字注释1
文字注释2
D 文字注释1
文字注释2
49、在应用程序的各个页面中传递值,可以使用内置对象(D)
A Request
B Application
C Session
D 以上都可以
50、下面是一聊天室登陆页面的代码部分,读程序并指出有几行错误(D)
1 <%
2 dim na,nalist
3 na=trim(request("name")) ‘name是表单中存储用户昵称的表单元素
4 if len(na)<>0 then
5 session("name")=na
6 nalist=split(application("people"), ‘people存储在线人的昵称
7 if ubound(nalist)>=10
8 response.Write "聊天室已满,请稍后再来!"
9 session.End
10 response.Abandon
11 end if
12 application.UnLock
13 application("people")=application("people")&na&
14 application("name")="欢迎"&na&"进入聊天室!"
15 application.Lock
16 response.Redirect main.asp
17 else
18
30 end if%>
A 5
B 6
C 7
D 8
ASP面试题及答案
某一公司的ASP面试题:
第一题:ASP中,VBScript的唯一的数据类型是什么?
第二题:在ASP中,VBScript有多种控制程序流程语句,如If…Then, Select… Case,
For … Next, Do … Loop, Exit等语句。请为这五个语句分别写一段使用的代码。
第三题:请看如下代码
<%
TestString="Test"
TestA
TestB
Response.write TestString
Sub TestA()
TestString="TestA"
End Sub
Sub TestB()
Dim TestString
TestString="TestB"
End Sub
%>
这段代码执行后,运行结果是什么?并解释一下为什么?
第四题:在ASP中,Server中有一个方法是URLEncode(string)
如: response.write Server.URLEncode("Test.ASP?TestNum=100&TestStr=你好")
结果输出: Test%2EASP%3FTestNum%3D100%26TestStr%3D%C4%E3%BA%C3
在ASP中,有ASC(String),Hex(Number),Mid(String,start,[,length])这三个可能用
到的函数,如果是三个函数的用法
如:
ASC("A")=65,ASC("你")= -15133
Hex(65)="41",Hex(-15133)="C4E3"
Mid("hello",2,1)="e", mid("this is test!",9,2)="te"
现在要求编写编码函数Function TestEncode(SourceString),及一个解码函数
Function TestDecode(CodeString)。TestEncode(SourceString)是将SourceString
串中非字母且非汉字且非数字的字符转换为对应Ansi编码的十六进制编码!
如:
TestEncode("Test.ASP?TestNum=100&TestStr=你好")=
"Test%2EASP%3FTestNum%3D100%26TestStr%3D你好"
而TestDecode(CodeString)是将编码的串还原,是TestEncode的逆函数。
第五题:
编写一个星期的函数GetWeek(aDate)
返回"星期一、星期二、星期三..."
第六题:
用ASP输出九九乘法口决表的网页
输出如下:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
...
要求编写一个完整的ASP文件
第七题到第九题
已知SQL Server数据库的有一个数据库TestDB,学生表结构如下:
表名:Student
字段名 类型 说明
id int 自增1
name varchar(16)
sex char(1) 'F'表示女性,'M'表示男性
... ...
已知已经定义了ADODB.Connection对象ConnTestDB已连接了上述的TestDB数据库
可以在以后的测试题中直接引用该对象.
第七题:
编写ASP代码,将Student中的人的姓名及性别列出来,并给统计学生人数如下:
姓名 性别
张三 男
李四 男
王五 女
... ...
总共有100个学生
第八题:
在上述数据库中,有一个表存放学生的得分的,结构如下:
表名:Score
字段名 类型 说明
StuID int 学生的ID值,关系是:Score.StuID=Student.ID
Chinese int
math int
要求输出内容:
姓名 语文 数学 总成绩
张三 60 100 160
...
请编写实现上述功的ASP代码
第九题:
已知:
某一学生:陈六,男,语文80分,数学60分,现要求编写ASP代码
将该学的数据插入数据库中,分别插入到上述的两个表Student,Score表中。
解答:
第一题:Variant
第二题:
dim x,y
if x="" then
x=1
end if
select case x
case 1
x=x+1
case 2
x=x+2
end select
for y=0 to x
response.write y
if y=2 then exit for
next
do
x=x+1
if x=4 then exit do
loop while x<5
第三题:
运行结果是:testA
原因是:testA所附值的是一个全局变量TestString
testB因为有Dim TestString这句定义,所以它所附值的只是一个局部变量。
第四题:
dim str
str="Test.ASP?TestNum=100&TestStr=你好"
function TestEncode(f_Str)
0Adim str_len
dim for_x
dim char
dim ansi
str_len=len(f_Str)
for for_x=1 to str_len
char=mid(f_Str,for_x,1)
ansi=asc(char)
if (ansi=>48 and ansi<=57) or (ansi=>65 and ansi<=90) or (ansi=>97 and ansi<=122) or (ansi<0 or ansi>225) then
TestEncode=TestEncode&char
else
TestEncode=TestEncode&""&cstr(Hex(ansi))
end if
next
end function
function TestDecode(f_Str)
0Adim str_len
dim for_x
dim char
dim ansi
str_len=len(f_Str)
for for_x=1 to str_len
char=mid(f_Str,for_x,1)
if char="" then
ansi=mid(f_Str,for_x+1,2)
TestDecode=TestDecode&chr(clng("&H"&ansi))
for_x=for_x+2
else
TestDecode=TestDecode&char
end if
next
end function
response.Write TestEncode(str)&"
"
response.Write TestDecode(TestEncode(str))
第五题:
function GetWeek(aDate)
if isdate(aDate) then
GetWeek=weekdayname(WeekDay(aDate))
end if
end function
response.Write GetWeek("2002/1/3")
第六题:
dim x,y
for x=1 to 9
for y=1 to x
response.Write y&"*"&x&"="&x*y&" "
if x=y then response.Write "
"
next
next
第七题:
set rs=ConnTestDB.execute("Select top 100 name,sex from Student order by id,sex")
response.Write "姓名 性别
"
while not rs.eof
response.Write rs("name")&" "&rs("sex")&"
"
rs.movenext
wend
第八题:
set rs=ConnTestDB.execute("Select name,Chinese,math from Student,Score where StuID=ID")
response.Write "姓名 语文 数学 总成绩
"
while not rs.eof
response.Write rs("name")&" "&rs("Chinese")&" "&rs("math")&" "&(rs("Chinese")+rs("math"))&"
"
rs.movenext
wend
第九题:
dim StrudentID,StrudentName,Strudentsex
StrudentName="陈六"
Strudentsex="男"
S_Chinese=80
S_math=60
Function yhsql(data)
yhsql="'"&replace(data,"'
End Function
ConnTestDB.execute "insert into Student (name,sex) value ("26yhsql(StrudentName)&
StrudentID=ConnTestDB.execute("select max(id) as sid from Strdent where name="&yhsql(StrudentName))("sid")
ConnTestDB.execute "insert into Score (StuID,Chinese,math) value ("&S_Chinese&
附:
第7题
asp程序优化之:对象变量
当遍历记录集时,一个保证能提高性能的方法是使用对象变量指向集合中的成员。例如,考虑下面的遍历含有Authors表的记录集的例子。
While Not rsAuthors.EOF
Response.Write rsAuthors("au_fname") & " " & _
rsAuthors("au_lname") & "
"
rsAuthors.MoveNext
Wend
可以用下面的方法加速代码执行,同时使其更易于理解。
Set FirstName = rsAuthors("au_fname")
Set LastName = rsAuthors("au_lname")
While Not rsAuthors.EOF
Response.Write FirstName & " " & LastName & "
"
rsAuthors.MoveNext
Wend
这里使用了两个变量,并指向记录集的Fidds集合中的特定字段(记住,Fidds集合是缺省的集合)。因为这里建立了一个对象的引用,所以可以使用对象变量而不是实际的变量,这意味着脚本引擎的工作减少了,因为在集合中进行索引的次数变少了。
1.在ASP中,Server中有一个方法是URLEncode(string)
如: response.write Server.URLEncode("Test.ASP?TestNum=100&TestStr=你好")
结果输出: Test%2EASP%3FTestNum%3D100%26TestStr%3D%C4%E3%BA%C3
在ASP中,有ASC(String),Hex(Number),Mid(String,start,[,length])这三个可能用到的函数,如果是三个函数的用法如:
ASC("A")=65,ASC("你")= -15133
Hex(65)="41",Hex(-15133)="C4E3"
Mid("hello",2,1)="e", mid("this is test!",9,2)="te"
现在要求编写编码函数Function TestEncode(SourceString),及一个解码函数
Function TestDecode(CodeString)。TestEncode(SourceString)是将SourceString串中非字母且非汉字且非数字的字符转换为对应Ansi编码的十六进制编码!如:
TestEncode("Test.ASP?TestNum=100&TestStr=你好")="Test%2EASP%3FTestNum%3D100%26TestStr%3D你好"
而TestDecode(CodeString)是将编码的串还原,是TestEncode的逆函数。
answer:Function URLDecode(enStr)
dim deStr
dim c,i,v
deStr=""
for i=1 to len(enStr)
c=Mid(enStr,i,1)
if c="%" then
v=eval("&h"+Mid(enStr,i+1,2))
if v<128 then
deStr=deStr&chr(v)
i=i+2
else
if isvalidhex(mid(enstr,i,3)) then
if isvalidhex(mid(enstr,i+3,3)) then
v=eval("&h"+Mid(enStr,i+1,2)+Mid(enStr,i+4,2))
deStr=deStr&chr(v)
i=i+5
else
v=eval("&h"+Mid(enStr,i+1,2)+cstr(hex(asc(Mid(enStr,i+3,1)))))
deStr=deStr&chr(v)
i=i+3
end if
else
destr=destr&c
end if
end if
else
if c="+" then
deStr=deStr&" "
else
deStr=deStr&c
end if
end if
next
URLDecode=deStr
end function
function isvalidhex(str)
isvalidhex=true
str=ucase(str)
if len(str)<>3 then isvalidhex=false:exit function
if left(str,1)<>"%" then isvalidhex=false:exit function
c=mid(str,2,1)
if not (((c>="0") and (c<="9")) or ((c>="A") and (c<="Z"))) then isvalidhex=false:exit function
c=mid(str,3,1)
if not (((c>="0") and (c<="9")) or ((c>="A") and (c<="Z"))) then isvalidhex=false:exit function
end function
给你写了一个试试:
<%
Function TestEncode(SourceString)
Dim i,s,c,TempString
TempString=""
For i=1 to Len(SourceString)
s=Mid(SourceString,i,1)
c=Cint(Asc(s))
If c<0 Or (c>=48 And c<=57) Or (c>=65 And c<=90) Or (c>=97 And c<=122) then
TempString=TempString & s
Else
TempString=TempString & "%" & Hex(Cint(c))
End If
Next
TestEncode=TempString
End Function
Function TestDecode(CodeString)
Dim i,s,c,TempString
For i=1 to Len(CodeString)
s=Mid(CodeString,i,1)
If s="%" then
c=Mid(CodeString,i+1,2)
TempString=TempString & Chr(Cint("&H" & c))
i=i+2
Else
TempString=TempString & s
End If
Next
TestDecode=TempString
End Function
Source="Test.ASP?TestNum=100&TestStr=你好"
Encode=TestEncode(Source)
Response.Write "
原字符串:" & Source
Response.write "
加密后的字符串:" & Encode
Response.write "
解密后的字符串" & TestDecode(Encode)
%>
ASP期末考试试题
2009-2010第二学期《ASP网站设计与开发》期末考试班级:___________姓名:__________学号:__________成绩:______________一、选择题(共30题,每题2分,共60分,每个题目有且只有一个答案)C1.静态网页文件的后缀是_.AaspBaspxChtmDjspD2.留言板必须加强管理,这是因为A.存储容量有限B.查看必须经过授权C.影响查看的速度D.可能存在过时或不健康的留言3.关于HTML文件说法错误的是:(C)AHTML文件是一个包含标记的文本文
Top