|
《基于web的程序设计》作业
一、 填空题
1、执行完a="6"语句后,a是 类型。
2、程序段
<%
a=3
a=a+5
%>
执行完毕后a的值是 。
3、VBSCRIPT函数 可以将数值转换为字符串。
4、Mid("八千里路云和月",3,2)的返回值是什么?
5、Session对象的默认有效期为 分钟。
6、Server对象中能够将字符串中的HTML标记字符转换为字符实体的方法是 。
7、Application对象的默认有效期为 。
8、程序段
<%
Session("a")=1
Session("b")=2
c= Session("a")+ Session("b")
%>
执行完毕后c的值是 。
9、如果设置ScriptTimeOut为60秒,那么实际的脚本最长执行时间为 秒。
10、已知数据库中有一名为user_info的表,要将此表中的所有记录一次删除掉,则SQL语句是 。
11、超文本语言中<Br>表示  ;表示 。
12、在某一html文件中包含一超级链接,此链接指向与该文件同一目录的文件test.htm。如何用超文本语言描述这一超级链接 。
13、VBSCRIPT函数 可以将变量转换为整数类型。
14、程序段
<%
dim y
y=1
call sub1
Response.Write y
sub sub1
dim y
y=2
end sub
%>
执行完毕后,页面上显示的值是 。
15、程序段
<%
y=1
call sub1
Response.Write y
sub sub1
y=2
end sub
%>
执行完毕后,页面上显示的值是 。
16、ADO的内部对象中被称为连接对象的是 ,被称为记录集对象的是 。
17、记录集有两个特殊的位置,BOF和EOF,BOF位于 ,EOF位于 。
18、如果希望所有的变量都预先声明,则必须在asp文件中的所有asp语句前添加
语句。
19、VBScript表达式(-3)Mod 8的值为 。
20、VBScript在进行字符串运算时运算符“&”的作用是 运算符“+”的作用是 。
21、VBScript中使用Do...Loop循环语句(循环体中不包含Exit Do语句)和While...Wend循环
语句时,在循环体中一定要有 的功能,否则会造成死循环。
22、request对象的作用是 。
23、response对象的作用是 。
24、session对象到期后会自动清除,但是如果在到期前要强行清除必须使用 方法。
25、下列程序段执行完毕后a的值是 。
<%
a=0
for i=-3 to 5
a=a+1
next
%>
26、如果设置session对象的timeout属性为10,那么session对象的有效期是 分钟。
27、ASP中,VBScript的唯一的数据类型是什么 。
28、代码<%strtemp=mid("what a wonderful day",8,9)%>执行完后strtemp的值是 。
29、<%
dim mystring
mystring=split("what*a*wonderful*day","*")
%>
上述代码段执行完毕后mystring(1)= ,mystring(2)= 。
30、在VBScript中,Sub子程序和Function函数的区别在于 。
31、server对象的mappath方法的作用是 。
32、用来清除session对象的方法是: 。
33、response对象的write方法的省略写法是: 。
34、如果要修改connection对象的execute方法的最长执行时间则需要对connection对象的 属性进行修改。
二、选择题
1、下列哪一个变量名称是正确的。( )
A.111 B.ab_1 C._sum D.a?b
2、请判断下面程序运行完毕后a,b,c的值。( )
<%
a="1"+"1"
b="1"&"1"
c="1"& 1
%>
A. "11"、11、11 B."11"、"11"、"11"
C. 11、"11"、2 D. 2、"11"、"11"
3、程序段
<%
Response.write "<a href=http://www.snnu.edu.cn>陕西师范大学</a>"
%>
执行完毕后,页面上显示的内容是( )。
A.陕西师范大学 B.<a href=http://www.snnu.edu.cn>陕西师范大学</a> C.陕西师范大学 (超链接) D.该句有错,无法正常输出
4、Int(3.45)和Int(-3.45)的值分别是什么?( )
A.3、-4 B. 4、-4 C. 3、-3 D. 3、-3
5、在同一个应用程序的页面1中执行Session.Timeout=30,那么在页面2中执行Response.write Session.Timeout,则输出值为多少?( )
A.15 B.20 C.25 D.30
6、程序段
<%
Dim StrTemp
StrTemp="user_name"
Session("StrTemp")= "TOM"
Session(StrTemp)= "JACK"
Response.Write Session(" user_name")
%>
A.TOM B.JACK C.TOMJACK D.语法有错,无法正常输出
7、已知数据库中有一名为users的表,表中有一名为sumbit_date且数据类型为日期型的字段用来存储用户注册时间,名为user_name且数据类型为字符型的字段用来存储用户名,请问下列哪一条语句可以查询出用户名为Mary且是2004年1月1日前注册的用户记录。( )
A. Select * from users where user_name=Mary and submit_date<#2004-1-1#
B. Select * from users where user_name=’Mary’ and submit_date<2004-1-1
C. Select * from users where user_name=’Mary’ and submit_date<#2004-1-1#
D. Select * from users where user_name=’Mary’ or submit_date<#2004-1-1#
8、假设有一个数据库,其中有表stuinfo,包括3个字段name(字符型)、grade(数字型)、birthday(日期/时间型),请问下面哪句能正确执行?( )
已知:varname="张三" vargrade=98 varbirthday=#1980-1-1#
A.sql="insert into stuinfo (name,grade,birthday) values
('"&varname&"',"&vargrade&",#" &varbirthday & "#)"
B.sql="insert into stuinfo (name,grade,birthday) values
('"&varname&"','"&vargrade& "',#" &varbirthday & "#)"
C.sql="insert into stuinfo (name,grade,birthday) values
('"&varname&"',"&vargrade& "," &varbirthday & ")"
D.sql="insert into stuinfo (name,grade,birthday) values
('varname',vargrade,#varbirthday#)"
9、如果某服务器比较慢,执行查询操作时可能无法正常执行,应该设置以下哪个属性?( )
A.connection对象.commandtimeout B.connection对象.connectiontimeout
C.command对象.connectiontimeout D.session对象.timeout
10、如果希望打开的记录集可以前后移动指针,并且可以读写,则应该选择下列哪一句?( )(注:rs为recordset对象、db为connection对象、strsql为存储SQL语句的变量)
A.rs.open strsql,db B.rs.open strsql,db,1
C.rs.open strsql,db,,3 D.rs.open strsql,db,1,3
11、response对象可以使用的方法不包括()
A.write B.open C.clear D.end
12、已知数组temp中有四个元素分别存储的是数值1、2、3、4执行下列程序段
<%
Dim a
For each one in temp
a=a+one
next
%>
则a的值是()
A.10 B.6 C.4 D.2
13、在For…next循环中,强行退出循环的的命令是()
A.end for B.exit for C.quit for D.break for
14、下面的程序段执行完毕,页面上显示的内容是什么?( )
<%
Response.write "祖国"
Response.end
Response.write "您好"
%>
A.祖国您好 B.您好 C.祖国 D.祖国(换行)您好
15、下列描述不正确的是( )
A.数组就是存储在内存中的用来包含数据的一组地址的名字
B.VBScript中的数组从0开始计数
C.Redim数组后,原有的数值就全部清空了
D.VBScript中声明数组时必须确定数组中元素的个数
16、下列关于VBScript中字符串函数的描述正确的是( )
A.Lcase(string)将string字符串里的所有小写字母转化为大写字母
B.Trim(string)将string字符串前面的空格去掉
C.mid(string,2,3)从string字符串的第3个字符开始取得长度为2的字符串
D.instr(string1,string2)返回string1字符串在string2字符串中第一次出现的位置
17、在ASP中,Server对象的方法URLEncode其作用是( )
A.指定脚本文件的最长执行时间
B.用于创建已注册到服务器的ActiveX组件
C.将字符转化为URL的编码输出
D.停止执行当前网页,转到新的网页执行
18、要在表users中查询username为"jojo"并且是2006年1月1日前注册的用户,下列哪条语句可行?()
A.select * from users where username=jojo and submitdate<#2003-1-1#
B.select * from users where username="jojo" and submitdate<2003-1-1
C.select * from users where username="jojo" and submitdate<#2003-1-1#
D.select * from users where username="jojo" or submitdate<#2003-1-1#
19、下面不是ADO的内部对象的是()
A.connection B.server C.recordset D.command
20、下列关于Error对象的描述错误的是()
A.Error对象被称为错误对象,是recordset对象的子对象
B.数据库程序运行时,一个错误就是一个Error对象
C.Errors是所有Error对象的集合
D.可以通过Errors集合的count属性判断是否发生错误
21、程序段
<%TestString="Test"
TestA
TestB
Response.write TestString
Sub TestA()
TestString="TestA"
End Sub
Sub TestB()
Dim TestString
TestString="TestB"
End Sub%>
执行完毕后浏览器中显示的结果是( )。
A."Test" B."TestA" C."TestB" D.程序有错
22、有下列两个asp文件1.asp,2.asp执行完1.asp后,浏览器中显示的结果是( )。
A."football" B."footballhello" C."hello" D.footballbasketball
23、querystring获取方法和form获取方法获取的数据子类型分别是( )。
A.数字、字符串 B.字符串、数字 C.字符串、字符串 D.根据具体值而定
24、下列关于global.asa文件描述错误的是( )。
A.每一个应用程序都只能有一个global.asa文件
B.global.asa文件必须放在应用程序的根目录下
C.在global.asa文件中不能包含任何输出语句
D.global.asa文件中的脚本必须写在<%和%>之间
25、下列程序段
<%
Response.write "<a href=’http://www.sohu.com’>搜狐</a>"
Response.write "<br>"
Response.write server.htmlencode("<a href=’http://www.sohu.com’>搜狐</a>")
%>
执行完毕后浏览器中显示的是( )。
A.搜狐
<a href=’http://www.sohu.com’>搜狐</a>
B. <a href=’http://www.sohu.com’>搜狐</a>
搜狐
C.<a href=’http://www.sohu.com’>搜狐</a>
搜狐
D. 搜狐
<a href=’http://www.sohu.com’>搜狐</a>
26、有下列两个asp文件1.asp,2.asp执行完1.asp后,浏览器中显示的结果是( )。
A.hello B. welcomehello C.welcomehellogoodbye D. goodbye
27、下列关于SQL语言说法正确的是( )
A.order by:按字段排序,ASC表示降序、DESC表示升序
B.group by: 表示按字段求和
C.字段列表:就是要查询的字段,可以是表中的一个或几个字段,中间用分号分隔
D.top(数值):表示只选取前多少个字段
28、下列SQL语句解释正确的是( )。
A.select submit_date as 注册时间 from users 查询指定表的submit_date字段并产生新字段“注册时间”存放submit_date字段的所有数据
B.select * from users where name like "张%" 查询指定表中所有name中含有“张”的记录
C.select count(*) from users 查询指定表的全部字段个数
D.select * from users where submit_date between #2003-1-1# and #2003-11-1# 查询指定表中所有2003年1月1日——2003年11月1日以外注册的用户
29、下列哪一组是全部都是connection对象的常用方法( )。
A.open、close、write B. execute、begintrans、closetrans
C.committrans、rollbacktrans、execute D. execute、close、clear
30、recordset记录集指针如果指向第一条记录,则rs.bof和rs.eof的值分别是( )。
A.true、false B. false、true C.true、true D. false、false
31、程序段
<%
response.write "lesson one"
response.end
response.write "lesson two"
%>
执行完毕后浏览器显示的结果是( )。
A.lesson one B.lesson two C.lesson one lesson two D.程序有错误
32、下列那一组全部都是request对象的获取方法( )。
A.querystring、form、servercertificate B.querystring、form、clientvariables
C.cookies、session、querystring D.querystring、form、cookies
33、<%dim a(1)
a(0)="a"
a(1)="b"
session("user")=a
response.write session("user")%>
上述程序段的执行结果是( )。
A.a B.b C.ab D.程序有错误、无法执行
34、<form>标记中的action属性表示( )。
A.上传表单的方法 B.按下submit所调用的程序
C.处理程序的网址 D.数据传送的MIME类型
35、有下列两个asp文件1.asp,2.asp执行完1.asp后,浏览器中显示的结果是( )。
A.hello B. welcomehello C.welcomehellogoodbye D. goodbye
36、下面关于数据库的基本术语的描述正确的是( )。
A.数据库中表的一行叫做一个字段
B. 数据库中表的一列叫做一条记录
C. 数据库是用来管理和组织表的,不能提供规则、触发器和表的关联等高级操作
D. 数据库中数据的组织形式称为数据模型。
37、已知rs是记录集对象,关于下列程序段描述正确的是( )。
<% dim vararry
vararry=rs.getrows(2)
response.write vararry(2,1)%>
A.该程序表示从记录集rs的当前记录开始取,取两条记录
B. 该程序表示从记录集rs的第一条记录开始取,取两条记录
C. 该程序最后要在浏览器中显示的是:第二条记录的第一个字段的值
D. getrows方法的参数为0时,表示返回全部记录
38、下列说法描述错误的是:( )。
A.Fields集合的属性只有一个,是count属性
B. Fields集合的方法只有一个,是item方法
C. Field对象的属性Value是用来返回当前字段名称的
D. Field对象的属性Value通常可以省略不写
39、下列关于recordset对象属性的描述正确的是:( )。
A.source属性用于设置数据库查询信息,可以是connection对象名
B. activeconnection属性用于设置数据库连接信息,可以是command对象名
C. Filter属性用来设置预显示的内容,当取值为1的时候表示现实所有数据
D. Absolutepage用来设置当前指针位于哪一页
40、关于下列程序段描述正确的是( )。
<%dim db,rs
set db=server.createobject("ADODB.connection")
db.open="Dsn=addr"
set rs=server.createobject("ADODB.recordset")
rs.open "select * from users",db,1,1%>
A.该程序表示打开一个记录集,指针类型和锁定类型分别表示键盘指针和只读
B. 该程序表示打开一个记录集,记录集只能被一个用户修改
C. 该程序表示打开一个记录集,记录集可以同时被多个用户修改
D. 该程序表示打开一个记录集,只能利用movenext或getrows向前移动检索数据
三、读程题、更多资料下载:谋学网(www.mouxue.com)
1、阅读下列分页显示程序段然后填空
<%set rs=server.CreateObject("adodb.recordset")
pagesize=15
pageno=cint(request("pageno"))
if pageno=0 then pageno=1
sql="select * from table
rs.open sql,application("conn"),1,3
rs.PageSize=pagesize%>
<table width=650 border=1>
<% (1)
b=0
while not rs.eof and b<pagesize%>
<tr>
<td><%=rs("内容")%></td>
<td><%=rs("时间")%></td>
</tr>
<% (2)
b=b+1
wend%>
</table>
2、下列程序段用来在指定位置建立一个文本文件,并且在此文本文件中要写入一行字符“欢迎来到计算机世界”,请仔细阅读然后填空。
<%
dim fileobject
set fileobject=server.createobject("scripting.filesystemobject")
dim textfile
set textfile=fileobject.createtextfile("D:\test.txt")
textfile.close
response.write"已经成功建立文件,请自己打开查看"
%>
3、关系数据库中有一表stuinfo用来存储学生成绩。如下所示:
学号 语文 数学 外语 理化
学号字段数据类型为字符型8位,其余字段为real型
(1)请写出一条SQL语句用于查询表中所有学生语文成绩的总和。
(2)请写出一条SQL语句用于查询表中所有总成绩大于380分的记录。
(3)请写出一条SQL语句用于向表中插入一条记录(学号:40212200,语文:89,数学:85,外语:90,理化:81)
4、如何在浏览器中居中显示一个两行两列的表格,请写出原代码(要求:表格宽600象素,高200象素,表格边框宽度为1,第一行第一列居中显示“计算机”三字)
5、在关系型数据库中有如下所示的表,用来存储学生基本信息。表名stuinfo
学号 姓名 性别 年龄 籍贯 政治面貌 民族
除年龄字段为整型外其余字段均为字符型
(1)设学号为8位,请写出SQL语句,查询出学号第5位和第6位为01的所有记录。
(2)写出SQL语句查询出所有姓“王”的学生的记录。
(3)查询出所有年龄介于18到20的记录。
(4)统计一下男生有多少人,女生有多少人,用一条SQL语句实现。
(5)写一条SQL语句查询出整个表内包含的记录数。
(6)写一条SQL语句查询出政治面貌为党员的男,女生各有多少人。
6、关系数据库中有一表用来存储学生成绩。如下所示:
学号 语文 数学 外语 理化
学号字段数据类型为字符型,其余字段为real型
(1)请用一条SQL语句查询出表中所有学生语文成绩的总和。
(2)请用一条SQL语句查询出表中所有学生数学成绩的平均分。
(3)请用一条SQL语句查询出表中每名学生的总成绩和平均成绩。
7、将下列程序补充完整,使页面现实效果如下:(注:下图仅仅作为示例,图中的日期时间均为系统当前时间)
<html>
<head>
<title>日历</title>
</head>
<body>
<%
d=date()
t=time()
%>
<center>
<p align=center><font size=4><b> (1) </b></font></p>
<p align=center><font size=6 color=red> (2) </font></p>
<p align=center><font color=blue> (3) </font></p>
</body>
</html>
8、将下列程序补充完整,用来显示如下存款利率表:(到期存款金额计算公式:存款额*(1+利率)^存款年数,假定活期利率是1.5%,定期利率是3%。)
<html>
<body>
<center>存款利率计算表</center>
<table border=1 cellpadding=0 cellspacing=0 width=500 align=center>
<tr>
<td align=center>金额</td>
<td align=center>年限</td>
<td align=center>活期到期金额</td>
<td align=center>定期到期金额</td>
</tr>
<%i=1
while i<=5%>
<tr>
<td>1000元</td>
<td><%=i&"年"%></td>
<td> (1) </td>
<td> (2) </td>
</tr>
<% (3)
wend%>
</table>
</body>
</html>
9、关系数据库中有一表用来存储图书信息。如下所示:
书名 作者 出版社 出版时间
表名:book,出版时间字段数据类型为时间型,其余字段为字符型
(1)请用一条SQL语句查询出表中各出版社图书的总数。
(2)请用一条SQL语句查询出表中2006年1月1日—2006年5月30日之间出版的图书。
(3)向表中插入一条记录,请写出SQL语句(计算机基础,张三,陕西师范大学出版社,2006年2月1日)。
(4)修改表中的记录,将表所有“陕西师大出版社”改为“陕西师范大学出版社”。
10、运行下面的程序后x= 、y= 。
<%Dim x
Dim y
Sub sub1()
Dim x
x = x + 1
y = y + 5
End Sub
Call sub1
x = x * 1
y = y + 1%>
11、执行下列程序后s的值为 。
<%s = 0
i = 1
Do
s = s + i
i = i + 1
Loop Until i > 5%>
12、完成下面的求2到50以内奇数的积的过程
<%Sub mult( )
Dim sum
sum=1
Dim i
For i=2 to 50
if i MOD 2=1 Then
response.write sum
End Sub%>
13、已知SQL Server数据库的有一个数据库TestDB,表结构如下:
表名:stuinfo
字段名、类型、说明如下表:
字段名 类型 说明
学号 char(8)
姓名 varchar(16)
性别 char(1) 'F'表示女性,'M'表示男性
入学时间 date
年龄 int
(1)写出sql语句用来向表中插入一条记录(40212001、张三、男、2002年9月1日,18)
(2)写出sql语句用来删除表中入学时间为2001年9月1日并且性别为男的记录
(3)写出sql语句用来将表中所有学生的年龄加一
(4)写出sql语句用来查询表中的前十条记录
(5)写出sql语句用来统计男生和女生的人数
四、编程题
1、已知文件test1.htm请编写文件test2.asp分别用变量row和col来接收test1.htm中输入的行数和列数并在浏览器中显示相应表格,在表格中的各单元个内显示行数和列数。
<form name=form1 method=post action=test2.asp>
请输入行数: <input name=text1 type=text>
<br>
请输入列数: <input name=text2 type=text>
<br>
<input name=submit type=submit value="提交">
<input type="reset" name="reset" value="取消">
</form>
2、关系数据库中有一表stu_kscj用来存储学生成绩。如下所示:
学号 语文 数学 外语 理化
学号字段数据类型为字符型8位、其余字段为real型,已知存在系统数据源student指向此表所在的数据库,请编写程序在表中利用recordset对象的open方法查询出表中所有语文成绩大于80分的记录并在浏览器中显示,如果符合条件的记录不存在请在浏览器中显示“对不起您所查询的记录不存在”。
学号:40012001、语文:123、数学:144、外语:99、理化:120
3、已知文件test1.htm的原代码为
〈form name=form1 method=post action=test2.asp〉
〈input name=text1 type=text〉
〈select name=select1〉
〈option〉VB〈/option〉
〈option〉C++〈/option〉
〈option〉VC〈/option〉
〈/select〉
〈input name=submit value=“提交” type=submit〉
〈/form〉
要求文件test2.asp接收test1.htm提交的数据,并在浏览器中显示,请写出test2 .asp的原代码。
4、请编写程序,判断当天日期,如果是25日,则显示“请注意,明天可能有病毒发作”。
5、已知表bus
线路 站点
除线路字段为整型外其余字段均为字符型
请写出asp文件test.asp的原代码,实现在浏览器中分页显示上述表中所有数据的功能,每页显示十条记录(已知存在系统数据源busstop指向上述表所在的数据库,可以直接使用),具体显示形式如下图所示。
6、已知程序1.asp,请写出程序2.asp:能根据学生年龄以及输入显示“XXX女同学,您的年龄是XXX,您的爱好是XXX” 或者“XXX男同学,您的年龄是XXX,您的爱好是XXX”
--------1.asp--------
<html>
<body>
<form method="post" action="ex3.asp" >
<p>姓名:<input type="text" name="name" size="20"></p>
<p>年龄:
<input type="radio" name="age" value="<12" checked>12岁以下
<input type="radio" name="age" value="12-15">12-15岁
<input type="radio" name="age" value=">15">15岁以上
</p>
<p>性别:
<input type="radio" name="sex" value="男" checked>男
<input type="radio" name="sex" value="女">女
</p>
<p>爱好:
<input type="checkbox" value="数学" name="like">数学
<input type="checkbox" value="物理" name="like">物理
<input type="checkbox" value="英语" name="like" >英语
<input type="checkbox" value="计算机" name="like">计算机
</p>
<p>
<input type="submit" value="提交" name="B1">
<input type="button" value="重写" name="B2"></p>
</form>
</body>
</html>
7、已知SQL Server数据库的有一个数据库TestDB,指向该数据库的系统数据源stu已经建立好,学生表结构如下:
表名:Student
字段名、类型、说明如下表:
字段名 类型 说明
学号 char(8)
姓名 varchar(16)
性别 char(1) 'F'表示女性,'M'表示男性
…… …… ……
(1)编写ASP代码,将Student中的人的姓名及性别以表格的形式列出来,并统计学生总人数如下:
姓名 性别
张三 男
李四 男
王五 女
... ...
总共有XXX个学生
(2)在上述数据库中,有一个表存放学生的成绩,结构如下:
表名:score
字段名、类型、说明如下表:
字段名 类型 说明
学生学号 char(8) 与student表中的学号关系是:Score. 学号D=Student. 学号
语文 int
数学 int
要求输出所有学生的成绩形式如下:
姓名 语文 数学 总成绩
张三 60 100 160
...
请编写实现上述功的ASP代码
8、用ASP输出九九乘法口决表的网页
输出如下:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
...
要求编写一个完整的ASP文件
9、已知SQL Server数据库的有一个数据库TestDB,指向该数据库的系统数据源stu已经建立好,学生表结构如下:
表名:Student
字段名、类型、说明如下表:
字段名 类型 说明
学号 char(8)
姓名 varchar(16)
性别 char(1) 'F'表示女性,'M'表示男性
表名:score
字段名、类型、说明如下表:
字段名 类型 说明
学生学号 char(8) 与student表中的学号关系是:Score. 学号D=Student. 学号
语文 int
数学 int
(1) 某一学生:陈六,学号:40612001,男,语文80分,数学60分,现要求编写ASP代码将该学生的数据插入数据库中,分别插入到上述的两个表Student,Score表中。
(2) 查询所有学生的成绩,在浏览器中显示如下形式内容
姓名 语文 数学 总成绩
张三 60 100 160
...
请编写实现上述功的ASP代码
|
|