2002年度网络程序员下午试卷


试题一(15分)
    下图为中文FrontPage预览方式下看到的网页效果图。请仔细阅读该网页制作过程的详细步骤,回答问题1至问题4,并把解答填入答题纸的对应栏中。


[说明]
    该网页为某一主页下面的“鲜花热卖”子页,页面中“鲜花热卖”、“米老鼠”和“热卖会”等图片以及文字“热卖新动向:QQ号”、主页地址“http://www.hotsale.com.cn”和滚动字幕“欢迎进入热卖会,祝你好运!!”等要求用表格的方式将它们组合起来。
    该网页的制作步骤如下:
    步骤1:在FrontPage的超链接视图中新建一页面,命名为“鲜花热卖”。
    步骤2:在页面的起始位置插入三行两列的表格。
    步骤3:插入“鲜花热卖”图片。
    步骤4:插入跳动的“米老鼠”图片、横幅图片“热卖会”,输入文字“热卖新动向:QQ号”。
    步骤5:输入主页地址“http://www.hostsale.com.cn”,并链接到主页。
    步骤6:插入滚动字幕“欢迎进入热卖会,祝你好运!!”,并设定为“滚动条”方式。
    步骤7:设定上述三行两列表格的属性,使得在预览方式下看不到表格的边框线条。
    步骤8:插入水平线。
    步骤9:插入“主页”、“精品欣赏”和“鲜花热卖”等导航栏。
    步骤10:输入正文,插入“玫瑰花”图片,并设定两者的定位方式。
    步骤11:插入“青蛙”图片,并设定为链接方式。
[问题1]
    步骤3和步骤4中,为了插入图片和文字,应如何进行定位?
[问题2]
    步骤6中怎样实现滚动字幕的效果?
[问题3]
    步骤7中的表格属性应设置成什么?
[问题4]
    步骤10中应怎样设置“玫瑰花”图片相对于正文的定位方式?

试题二(15分)
    请回答以下关于WindowsNT使用和操作的问题1至问题4,把解答填入答题纸的对应栏中。
[问题1]
    Windows NT中,启动系统的选择由文件Boot.ini来设定。假设某台PC机上,文件Boot.ini的内容如下:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)Partition(2)\WINNT
[operting systems]
multi(0)disk(0)rdisk(0)Partition(2)\WlNNT="WindowsNT Server Version4.00"
multi(0)disk(0)rdisk(0)Partition(2)\WINNT="Windows NT Server Version 4.00[VGA mode]"/basevideo
c:\="MS—DOS"
    (1)该PC机一般默认情况下为Windows NT Serve4.0操作系统启动。若要改为默认情况下由DOS操作系统启动,则应该怎样改写Boot.ini中的内容?
    (2)若PC机中有两个IDE硬盘,第一个硬盘有一个主分区,第二个硬盘有两个主分区和一个逻辑分区,在第二个硬盘的逻辑分区上安装了Windows NT Server4.0操作系统,则Boot.ini中的ARC路径应是什么?
[问题2]
    某个Windows NT网络中有一台PDC和一台BDC。PDC偶尔需要关机进行维修,这样就需要将BDC升级为PDC。而维修好后的PDC又要重新加入到网络中,并作为PDC。请问怎样才能使原来的PDC重新作为域中PDC?
[问题3]
   要使Windows NT网络中的Windows95/98客户机,通过Windows NT服务器访问Netware服务器资源,则在Windows NT服务器和Netware服务器上应分别做哪些安装与设置?
[问题4]
   Windows NT中,若在同一个NTFS分区中将一个目录内的文件复制到另一个目录中,则在目标目录上的这些文件具有什么权限?若是将文件由NTFS分区复制到FAT分区中,这些文件的权限有什么变化?

试题三(15分)
    阅读下列说明和HTML文本。在HTML文本中存在5处错误,请指出并给出改正的方法。
[说明]
这是一个简单的HTML文本,描述了框架的HTML语法,显示效果如下图:


[HTML文本]
(1)<html>
(2)<head>
(3)<title>框架测试</title>
(4)</head>
(5)<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
(6)<frameset rows="64,*">
(7)<frame name="banner" scrolling="no" target="contents" src="header.htm">
(8)<frame name="contents" target="list" src="list.htm">
(9)<frameset cols="150,*">
(10)<frame name="main" src="context.htm">
(11)</frameset>
(12)</frameset>
(13)<noframes>
(14)<body><p>此网页使用了框架。</body>
(15)</noframes>
(16)</html>

试题四(15分)
    阅读下列说明和HTML文本,分析其中嵌入的JavaScript脚本,将应填入   (n)   处的语句写在答题纸的对应栏内。
[说明]
    以下的JavaScript脚本的功能是创建一个基于resume模型(表示简历)的对象newguy(表示张春芳的简历),并生成一个下拉列表框。该下拉列表框的选项是对象newguy的所有属性(如name,sex等)。用户在下拉列表框中选择了某个属性时,就会打开一个新的浏览器窗口并输出该属性的值。例如,若用户选择了sex属性时,则会在浏览器窗口中输出:您查阅的属性为“sex”,其值为“女”。
    一个下拉列表框的HTML文法如下例:
    <select size="1" name="example">
       <option value="1">选项一</option>
       <option value="2">选项二</option>
    </select>
    下拉列表框的每一个选项都由option与value两部分组成,option为用户可见的选项信息,value为该选项的值。在JavaScript中,该下拉列表框是一个对象,option数组是该对象的属性。 在上例中, example.option[1].text的值为“选项一”, 而example.option[1].value的值为“1”。
[HTML文本]
object.html中的内容:
<html><head><title>对象的创建与使用</title>
<script language="javaScript”>
<!--
function printvalue() {
    var print_string="";
    for(       (1)      ) {
        if (prop !='printvalue') //方法printvalue不能作为属性显示
        print_string=print_string+"<option value='" &
                 +this[prop]+"'>"+prop+"</option>";
}//形成下拉列表框option部分的HTML文法字符串
return print_string;
} //该函数用于产生下拉列表框option部分的HTML文法字符串
   (2)   resume (name,sex,address,phone) {
this.name=name;  this.sex=sex;
this.address=address;  this.phone=phone;
//以上为初始化模型的各属性
this.printvalue=   (3)    ;
//将printvale函数映射为resume的printvalue方法
}//声明一个新的对象模型resume。该模型为个人简历,用于创建个人简历对象
function displayvalue(selobj) {
var disp_string
disp_string="您查阅的属性为'"+   (4)   +"'其值为'"+&
  (5)   +"'";      //产生字符串
newwin=window.open("","hello","");//打开新浏览器窗口
  (6)  ;  //在新窗口中打开文档
newwin.document.write(disp_string);//在文档中显示信息
}
--> </script></head>
<body>
<script language="JavaScript">
<!--
newguy=   (7)    ("张春芳","女","北京朝阳路57号","010-67456789");
//创建一个新的resume对象,对象名称为newguy
document.write("<form method='POST' action=''>");
document.write("<p><select onChange='displayvalue(this)' name='resume' size='1'>");
//指定下拉列表框在选择改变时触发displayvalue函数
document.write(  (8)  ); //输出列表框的options部分 
document.write("</select></p></form>");
//利用对象newguy的方法printvalue产生该下拉列表框的HTML文法
-->
</script></body></html>

试题五(15分)
    阅读下列说明和HTML文本,分析其中嵌入的JavaScript脚本,将应填入   (n)   处的语句写在答题纸的对应栏内。
[说明]
    这是一个较为简单的滚动广告条例子。在页面上设立一个区域作为广告条区域,在该区域内采用颜色淡出(逐渐变浓出现,又逐渐变淡消失)的方式,将预先设定好的多条广告文字信息循环逐条显示。用户可以设定广告内容、循环次数、字体颜色等各项属性,从而产生不同的广告效果,并且该广告条可以在任何的页面中引用。
在下面的HTML文本中,为了简化文本和增加可读性,省略了大量关于浏览器的特殊属性设置,JavaScript程序中使用了以下一些函数:
setTimeout(函数名,时间) //设定限时器
setInterval(函数名,时间) //设定时间间隔触发器
clearInterval(参数略) //取消时间间隔触发器
[HTML文本]
advertise.htm中的内容:
<html><head><title>淡出式广告条</title></head>
<body bgcolor="#ffffff" text="#000000" leftmargin="0"  topmargin="O">
<DIV id=elFader style="POSITION:relative;VISIBILITY:hidden;WIDTH:500px"><DIV
align=center>网站广告条区域</DIV></DIV>
<!— 设定页面中的广告条区域,JavaScript脚本通过控制区域内文字、颜色等产生淡出效果,从而形成多条广告文字的循环播放>
<SCRIPT language=JavaScriptl.2 type=text/javascript>
prefix="";
arNews=["欢迎使用广告条","","广告内容循环播放","","广告切换采用淡出处理",""]
</SCRIPT>
<!-- 设定广告词,每两条广告间用空串隔开>
<SCRIPTlanguage=JavaScriPtl.2    (1)    type=text/javascript></SCRIPT>
<!-- 调用存放于服务器上的JavaScript脚本文件fader.js,以产生广告效果 >
</body></html>
fader.js中的内容:
<注:fader中文意义为淡出,各常量前缀FDR为fader的缩写>
//在fader.js的头部,定义了所使用的各种常量、变量,包括循环的次数、字体的颜色等
//同时获取关于浏览器的特性信息

………
FDRmaxLoops=100; FDRfinite=(FDRmaxLoops>0);
FDRblendInt=6;  blendTimer=null;
//定义最大循环次数、是否无限循环、淡出处理时间间隔(秒)、时间间隔触发器
//以下为代码主体部分

……
  (2)   = FDRcountLoads;//设置在窗口装载时运行主体函数FDRcountLoads
function FDRcountLoads0{   (3)    }
//设置限时器,约定1毫秒后运行初始化函数FDRinit
functionFDRinit(){
if(    4   ) return;//如果没有定义区域elFader就退出
elFader.innerHTML="";

……
//函数FDRinit的主体部分为根据浏览器的类型初始化elFader的各属性
FDRstart(0); }
//定义初始化函数FDRinit(),在函数尾部调用广告效果开始函数
function FDRstart(ind){
    newsCount=ind; //用户需要显示的广告条数,0值表示显示预设的全部广告信息
     if(      (5)     ) loopCount=0; //如处于有限循环次数状态,初始化循环次数变量
FDRdo(); //执行广告文字信息切换
blendTimer=    (6)     ;
} //定义时间间隔触发器,按照设定的处理时间间隔触发文字信息切换
function FDRdo(){
     if(     (7)       )return;
      //若没有定义时间间隔触发器并且循环次数大于0,则退出
     if(    (8)    ){
FDRend();
return; }
//当循环次数有限,并且当前已是最大循环次数时就终止广告切换并退出
FDRfade();
//执行淡出处理程序,切换广告内容
if(newsCount=arNews.1ength){
    newsCount=0;
     if(FDRfinite)    (9)    ;//如果处于有限循环次数状态,则循环变量加1
} //该段程序较为特殊,每次当newsCount==arNews.1ength时,表示所有广告已经循环播放了一次,所以循环次数加1,newsCount在每次切换广告内容时都会增加,其处理部分在FDRmakeStr()中
} //定义广告切换函数,通过调用淡出处理函数实现广告切换
function FDRmakeStr0{
    tempStr="";
……//FDRmakeStr()的主体部分为根据浏览器特性,从字符串数组arNewsz中取出显示下一条广告信息,并将newsCount的值加2,具体内容省略
return tempStr;
} //定义输出广告信息函数,通过该函数输出下一条要显示的信息
function FDRfade(){
newsStr=FDRmakeStr();
if(IEhasFilters)  elFader.filters.blendTrans.Apply();
elFader.innerHTML=newsStr;
if(IEhasFilters) elFader.filters.blendTrans.Play();
} //定义淡出处理函数,通过调用IE浏览器的过滤器产生淡出效果
function FDRend(){
     (10)    ;//消除时间间隔触发器
blendTimer=null;
} //定义结束广告切换函数

本试题由老顽童提供       JOJO整理