《Web程序设计》课后题答案Word格式.docx
《《Web程序设计》课后题答案Word格式.docx》由会员分享,可在线阅读,更多相关《《Web程序设计》课后题答案Word格式.docx(40页珍藏版)》请在冰豆网上搜索。
(2)不用调试器:
允许以在开发工具上下文以外的一般运行状况运行代码,这样这
些工具不会提供可用的运行时信息。
如果VisualStudio发现关键文件已更改,将在启动包含指定起始页的浏览器之前生成项目。
(3)在浏览器中查看:
编译项目并打开从“解决方案资源管理器”中选择的Web页。
项目被编译并在VisualStudio内的默认浏览器中运行。
2.操作题
请自定义你的集成开发环境,将所有文本的颜色改成红色。
(1)在菜单栏中,选择[工具]
→[选项]。
(2)在[选项]列表中选择[环境]→[字体和颜色]。
(3)在[项前景]列表中,选择“红色”,然后选择[确定]按钮。
3.程序设计题
创建一个指向目标文件夹“d:
\CompiledSite”的IIS虚拟目录。
(1)打开“InternetInformationServices(IIS)管理器”对话框。
(2)在“连接”窗格中,展开服务器名称,然后展开“站点”。
(3)右击“默认网站”,然后选择“添加虚拟目录”。
此时将出现“添加虚拟目录”对话框。
(4)在“别名”框中,输入
CompiledWebSite。
(5)在“物理路径”框中,输入d:
\CompiledSite。
单击“确定”。
(6)在IIS管理器的“连接”窗格中,右击新的虚拟目录,然后选择“转换为应用程序”。
此时将出现“添加应用程序”对话框。
第2章习题与练习
1.选择题。
(1)-(5)BCBCD(6)-(10)BACAD
2.填空题。
(1)<
bodybgcolor=”gray”text=”red”>
(2)超链接,加粗
(3)<
sup>
(4)Name,Method,Post,Action
(5)与历史清单有关的信息
3.程序题。
<
html>
head>
title>
图书分类表<
/title>
/head>
body>
tablewidth="
250"
bordercolor=redborder="
1"
cellpadding="
0"
cellspacing="
>
caption>
/caption>
<
trbgcolor=cyan>
th>
类别<
/th>
书名<
价格<
/tr>
tr>
tdrowspan="
2"
计算机<
/td>
tdbgcolor=cray>
web程序设计<
td>
41<
C#开发<
29<
文学<
奋斗<
35<
tdcolspan="
3"
align="
right"
日期:
2013-03-08<
/table>
/body>
/html>
第3章习题与练习
一、判断题
1.(对)2.(对)3.(错)4.(错)5.(错)
二、选择题
ADADCAADDCABCCBCADDDABDBDBCAA
三、填空题(共6小题)
1、(xhtml)
2、div是块元素,span是行内或内联元素
3、color:
#666;
5、(xhtml或xml,css)
第4章习题与练习
一选择题
CDABCD
二填空题
%@Master%>
、ContentPlaceHolder
(2)App_Theme、服务器控件
(3)外观文件、.CSS文件、图像和其他资源
(4)页面指令级、应用程序级、文件夹级
(5)FindControl()方法和MasterType指令
(6)SkinID
三简答题
(1)答:
母版页是指可以再同一站点的多个页面中共享使用的特殊网页。
用户可以使用母版页建立一个通用的版面布局或者使用母版页在多个页面中显示一些公共的内容。
引用母版页的Web窗体页面称为内容页。
(2)答:
内容页与普通的Web窗体页面有所不同,主要体现在:
①在<
%@Page……%>
指令中增加了Title="
"
和MasterPageFile="
~/MasterPage.master"
两个指令。
②在内容页中不包含<
、<
form>
等Web元素,因为这些元素都被放置在母版页中。
③在内容页中包含有若干个<
asp:
Content……>
和<
/asp:
Content>
标记,而且内容页的所有元素都要包含在Content控件中。
(3)答:
同一类型控件的外观分为默认外观和命名外观两种:
①默认外观:
不设置控件的SkinID属性,它自动应用于同一类型的所有控件。
在同一主题中针对同一类型的控件只能有一个默认外观。
②命名外观:
如果同一类型控件有不同于默认外观的属性设置时,可以通过设置控件的SkinID属性来解决。
(4)答:
①设计主题。
②在内容页中设置StyleSheetTheme属性为引用的主题。
例如主题名称为Theme1,则只需要在内容页中设置页面的StyleSheetTheme属性为“Theme1”,母版页和内容页的内容都会自动应用此主题。
四答:
TextBoxtextbox=(TextBox)Master.FindControl("
TextBox1"
);
if(textbox!
=null)
{
textbox.Text="
123456"
;
}
第5章习题与练习
1.填空题
1)TreeView控件,SiteMapPath控件,Menu控件
2).sitemap
3)引用另外一个sitemap文件
4)静态菜单的菜单显示级别数为2
5)_blank
6)DataSourceID
2.操作题:
主要步骤:
新建一个名为Web.sitemap的XML站点地图文件,Web.sitemap页面中修改并添加代码:
?
xmlversion="
1.0"
encoding="
utf-8"
?
siteMap>
siteMapNodeurl="
~/default.aspx"
title="
首页"
description="
~/Newslist.aspx"
新闻"
~/PENews.aspx"
体育新闻"
/>
~/internationalNews.aspx"
国际新闻"
/siteMapNode>
~/userManage.aspx"
用户管理"
~/userRegister.aspx"
用户注册"
/>
~/userLogin.aspx"
用户登录"
用户登陆"
/siteMap>
然后再添加一个新的Web页面,使用默认名称“Default.aspx”,添加一个SiteMapDataSource控件,ID属性使用默认的SiteMapDataSource1。
在“Default.aspx”页面再添加一个TreeView控件,将DataSourceID属性值设为"
SiteMapDataSource1,即连接了数据源,“Default.aspx”。
第6章习题与练习
1.选择题
1)A2)B3)C4)B5)B6)A7)C8)C9)B10)D11)B12)B13)C14)A15)B
2.填空题
1)continue2)System.Enum3)整型、实型、字符型和布尔型4)ifswitch5)5
6)封装性、继承性和多态性7)值类型、引用类型和指针类型8)80
3.简答题
1)一个ASP.NET的Web页面包含以下几个部分:
指令:
供编译器处理的ASP.NET页面和用户控件时使用的命令。
HTML标签:
作为外观设计的一部分,不能在代码中被访问。
服务器控件:
允许用户与页面交互的控件,在服务器上被处理,允许引发服务器端事件。
代码声明块:
定义当呈现页时执行的内联代码或内联表达式,放在<
%…%>
标记中。
代码呈现块:
把用C#语言编写的代码放在<
script>
标签中。
页面事件:
页面触发时的事件。
控件事件:
在客户端被用户触发的事件。
2)Page指令的常用属性
属性
说明
AutoEventWireUp
指示页的事件是否自动绑定。
如果启用了事件自动绑定,则为true;
否则为false。
默认值为true
Buffer
确定是否启用了HTTP响应缓冲。
如果启用了页缓冲,则为true;
CodeFile
指定指向页引用的代码隐藏文件的路径
Debug
指示是否应使用调试符号编译该页。
如果应使用调试符号编译该页,则为true;
否则为false。
由于此设置影响性能,因此只应在开发期间将此属性设置为true
EnableSessionState
定义页的会话状态要求。
如果启用了会话状态,则为true;
如果可以读取会话状态但不能进行更改,则为ReadOnly;
默认值为true。
这些值不区分大小写
EnableTheming
指示是否在页上使用主题。
如果使用主题,则为true;
EnableViewState
指示是否在页请求之间保持视图状态。
如果要保持视图状态,则为true;
Inherits
定义供页继承的代码隐藏类。
它与CodeFile属性(包含指向代码隐藏类的源文件的路径)一起使用
Language
指定在对页中的所有内联呈现(<
%%>
和<
%=%>
)和代码声明块进行编译时使用的语言。
值可以表示任何.NETFramework支持的语言,如C#
Theme
指定在页上使用的有效主题标识符。
如果设置Theme属性时没有使用StyleSheetTheme属性,则将重写控件上的单独的样式设置,允许您创建统一而一致的页外观
Trace
指示是否启用跟踪。
如果启用了跟踪,则为true;
默认值为false
3)public:
对任何类和成员都公开,无限制访问;
protected:
仅仅对该类以及该类的派生类公开;
private:
仅仅对该类公开;
internal:
只能值包含该类的程序集中访问该类(只是单独的项目,而不是整个解决方案);
protectedinternal:
只能在本类、派生类或者包含该类的程序集中访问。
4)值类型直接存储它的数据内容,包括简单数据类型、结构类型和枚举类型;
引用类型不存储实际数据内容,而是存储对实际数据的引用,包括类、字符串、数组、委托和接口等。
值类型的值是存放在堆栈中的,改变其值,不改变变量原有的值,而引用类型的值是存放在栈中的,其引用的地址是存放在堆栈中的,改变其值也就改变了变量原有的值。
值类型不允许包含null值,然而可空类型可以将null赋值给值类型。
5)装箱转换是指将一个值类型隐式或显式地转换成一个对象类型,或者把这个值类型转换成一个被该值类型应用的接口类型(interface-type)。
把一个值类型的值装箱,就是创建一个对象实例并将这个值复制给这个对象,装箱后的对象中的数据位于堆中,堆中的地址在栈中。
被装箱的类型的值是作为一个拷贝赋给对象的。
拆箱转换是指将一个对象类型显式地转换成一个值类型,或是将一个接口类型显式地转换成一个执行该接口的值类型。
注意装箱操作可以隐式进行但拆箱操作必须是显式的。
拆箱过程分成两步:
首先,检查这个对象实例,看它是否为给定的值类型的装箱值。
然后,把这个实例的值复制给值类型的变量。
4.程序阅读题
1)比较两个整数a和b的大小,若a>
b则返回1,若a==b则返回0,若a<
b则返回-1。
2)采用选择排序的方法对数组a中的n个整数按照从小到大的次序排列。
3)求出从键盘上输入的一批常数的平均值,以-1作为结束输入的标志。
4)显示输出数组a中大于等于平均值的所有元素值。
5)91215
6)581114
7)2510
2510
8)5
7
5.编程题
1)
usingSystem;
classTest
{
staticvoidMain()
floatx,y,z,temp;
Console.Write("
请输入一个实数:
x=float.Parse(Console.ReadLine());
y=float.Parse(Console.ReadLine());
z=float.Parse(Console.ReadLine());
temp=x>
=y?
x:
y;
temp=temp>
=z?
temp:
z;
Console.WriteLine("
最大数为:
{0}"
temp);
}
2)
{
charch;
请输入一个字符"
ch=char.Parse(Console.ReadLine());
if(ch>
='
A'
&
&
ch<
Z'
)
大写字母"
elseif(ch>
a'
z'
小写字母"
0'
9'
数字"
elseConsole.WriteLine("
其他字母"
3)
inti=2,j;
boolb;
2到100中的素数为:
while(i<
=100)
b=true;
j=2;
while(j<
=i-1)
if(i%j==0)
b=false;
break;
j++;
if(b==true)Console.Write("
{0}"
i);
i++;
Console.WriteLine();
4)
publicstaticvoidMain()
intscore;
请输入学生成绩"
score=int.Parse(Console.ReadLine());
score=score/10;
switch(score)
case10:
成绩优秀"
case9:
case8:
成绩良好"
case7:
成绩及格"
case6:
default:
成绩不及格"
5)
conststringUserName="
admin"
conststringPassWord="
stringusername,password;
inti=1;
while(i<
=3)
请输入用户名"
username=Console.ReadLine();
请输入密码"
password=Console.ReadLine();
if(username==UserName&
password==PassWord)break;
else
你输入的用户名或者密码错误,请重新输入用户名和密码"
if(i<
=3)Console.WriteLine("
正在登录系统"
不能登录系统"
6)
inti,j,temp;
constintn=10;
int[]SortArray=newint[n];
for(i=0;
i<
n;
i++)
\n请输入一个数:
SortArray[i]=int.Parse(Console.ReadLine());
\n等待排序的数据序列为:
SortArray[i]);
for(i=n-1;
i>
=0;
i--)
for(j=0;
j<
=i-1;
j++)
if(SortArray[j]>
SortArray[j+1])
temp=SortArray[j];
SortArray[j]=SortArray[j+1];
SortArray[j+1]=temp;
\n已经排序后的数据序列为:
7)
structstudent
publicintno;
publicstringname;
publicstringsex;
publicdoublescore;
staticvoidMain(string[]args)
studentstu;
stu.no=10003;
stu.name="
小小"
stu.sex="
女"
stu.score=89.5;
学生