1、 Web 程序设计习题与练习答案 第 1 章 习题与练习 1.简答题 1)什么是 MSDN,它包含哪些功能? 答案: MSDN( Microsoft Developer Network)是 Microsoft 公司面向软件开发者的一种信息服务。 MSDN 实际上是一个以 Visual Studio 和 Windows 平台为核心整合的开发虚拟社区,包括技术文档、在线电子教程、网络虚拟实验室、微软产品下载(几乎全部的操作系统、服务器程序、应用程序和开发程序的正式版和测试版,还包括各种驱动程序开发包和软件开发包)、 Blog、 BBS、 MSDN WebCast、与 CMP 合作的 MSDN 杂志
2、等等一系列服务。 2) Visual Studio 内置服务器的作用是什么? 答案: Visual Studio 开发服务器是在 Windows 操作系统(包括 Home Edition 版本)上本地运行的 Web 服务器。与 IIS Express 一样,它是专门构建用于在本地计算机上运行 ASP.NET 的。它不会处理针对其他计算机的请求。此外,它也不会提供应用程序范围外的文件。 Visual Studio 开发服务器是一种方法,可用于在向运行 IIS 的生产服务器发布网站或应用程序之前在本地进行测试。 3) Visual Studio 2012 开发环境中主要包含哪些窗口? 答案: 工具
3、栏。提供用于格式化文本、查找文本等的命令。一些工具栏只有在“设计”视图下才可用。 “解决方案资源管理器”窗口。显示网站中的文件和文件夹。 “文档”窗口。显示在视图选项卡窗口中处理的文档。单击选项卡可以实现在文档间切换。 “属性”窗口。允许您更改页、 HTML 元素、控件及其他对象的设置。 视图选项卡。展示同一文档的不同视图。 “设计”视图是一种近似 WYSIWYG 的编辑界面。 “源”视图是页的 HTML 编辑器。 “拆分”视图可同时显示文档的“设计”视图和“源”视图。如果要在“设计”视图中打开网页,需在“工具”菜单上,单击“选项”,选择“ HTML 设计器”节点,然后更改“起始页位置”选项。
4、 工具箱。提供可以拖到页上的控件和 HTML 元素。 “工具箱”元素按常用功能分组。 服务器资源管理器 /数据库资源管理器。用于显示数据库连接。如果未显示“服务器资源管理器”,可以在“视图”菜单上单击“服务器资源管理器”或“数据库资源管理器”。 4)编写 ASP.NET 应用程序的步骤是什 么? 答案: ( 1)创建一个新的 ASP.NET Web 窗体页 ( 2)将页面添加到网站 ( 3)向页中添加静态文本 ( 4)添加控件 ( 5)对 Button 控件编程 5)请对不同调试方法进行分析比较。 答案: ( 1) 使用调试器 : 启动默认浏览器并加载指定的起始页。在调试器中运行页 可 以逐
5、行 扫描 代码,并利用其他分析工具和运行时信息 来进行调试 。如果 Visual Studio 发现关键文件已更改,它同样在启动包含指定起始页的浏览器之前生成项目。 ( 2) 不用调试器 : 允许以在开发工具上下文以外的一般运行状况运行代码,这样 这 些工具不会提供可用的运行时信息。如果 Visual Studio 发现关键文件已更改,将在启动包含指定起始页的浏览器之前生成项目。 ( 3) 在浏览器中查看 : 编译项目并打开从 “解决方案资源管理器 ”中选择的 Web 页 。 项目被编译并在 Visual Studio 内的默认浏览器中运行。 2.操作题 请自定义你的集成开发环境,将所有文本的
6、颜色改成红色。 答案: ( 1)在菜单栏中,选择 工具 选项 。 ( 2)在 选项 列表中选择 环境 字体和颜色 。 ( 3)在 项前景 列表中,选择“红色” ,然后选择 确定 按钮。 3.程序设计题 创建一个指向目标文件夹“ d:CompiledSite” 的 IIS 虚拟目录。 答案: ( 1)打开“ Internet Information Services (IIS)管理器”对话框。 ( 2)在“连接”窗格中,展开服务器名称,然后展开“站点”。 ( 3)右击“默认网站”,然后选择“添加虚拟目录”。此时将出现“添加虚拟目录”对话框。 ( 4)在“别名”框中,输入 CompiledWebS
7、ite。 ( 5)在“物理路径”框中,输入 d:CompiledSite。单击“确定” 。 ( 6)在 IIS 管理器的“连接”窗格中,右击新的虚拟目录,然后选择“转换为应用程序”。此时将出现“添加应用程序”对话框。单击“确定”。 第 2 章习题与练习 1. 选择题。 ( 1) -( 5) BCBCD (6)-(10)BACAD 2. 填空题。 (1) ( 2)超链接 ,加粗 ( 3) ( 4) Name, Method, Post, Action ( 5)与历史清单有关的信息 3. 程序题。 图书分类表 图书分类表 类别 书名 价格 计算机 web 程序设计 41 C#开发 29 文学 奋斗
8、 35 日期: 2013-03-08 第 3 章习题与练习 一、判 断题 1. (对 ) 2. (对 ) 3. (错 ) 4. (错 ) 5. (错 ) 二、选择题 A D A D C A A D D C A B C C B C A D D D A B D B D B C A A 三、填空题(共 6 小题) 1、 (xhtml) 2、 div 是块元素, span 是行内或内联元素 3、 color:#666; 5、 ( xhtml 或 xml,css) 第 4 章习题与练习 一 选择题 CDABCD 二 填空题 (1) 、 ContentPlaceHolder ( 2) App_Theme、
9、服务器控件 ( 3)外观文件、 .CSS 文件、图像和其他资源 ( 4)页面指令级、应用程序级、文件夹级 ( 5) FindControl()方法和 MasterType 指令 ( 6) SkinID 三 简答题 ( 1)答:母版页是指可以再同一站点的多个页面中共享使用的特殊网页。用户可以使用母版页建立一个通用的版面布局或者使用母版页在多个页面中显示一些公共的内容。引用母版页的 Web 窗体页面称为内容页。 ( 2)答:内容页与普通的 Web 窗体页面有所不同,主要体现在: 在 指 令中增加了 Title=“和 MasterPageFile=“/MasterPage.master“两个指令 。
10、 在内容页中不包含 、 、 、 、 等 Web 元素,因为这些 元 素 都 被放 置 在 母版 页 中 。 在 内容 页 中 包含 有 若 干个 和标记,而且内容页的所有元素都要包含在 Content 控件中。 ( 3)答:同一类型控件的外观分为默认外观和命名外观两种 : 默认外观:不设置控件的SkinID 属性,它自动应用于同一类型的所有 控件。在同一主题中针对同一类型的控件只能有一个默认外观 。 命名外观:如果同一类型控件有不同于默认外观的属性设置时,可以通过设置控件的 SkinID 属性来解决。 (4)答: 设计主题。 在内容页中设置 StyleSheetTheme 属性为引用的主题。
11、例如主题名称为 Theme1,则只需要在内容页中设置页面的 StyleSheetTheme 属性为“ Theme1”,母版页和内容页的内容都会自动应用此主题。 四 答: TextBox textbox = (TextBox)Master.FindControl(“TextBox1“); if (textbox != null) textbox.Text = “123456“; 第 5 章习题与练习 1.填空题 1) TreeView 控件, SiteMapPath 控件, Menu 控件 2) .sitemap 3) 引用另外一个 sitemap 文件 4) 静态菜单的菜单显示级别数为 2 5
12、) _blank 6) DataSourceID 2操作题: 主要步骤: 新建一个名为 Web.sitemap 的 XML 站点地图文件, Web.sitemap 页面中修改并添加代码: 然后 再 添 加 一 个新 的 Web 页 面 ,使 用 默 认 名称 “ Default.aspx ”,添 加 一 个SiteMapDataSource 控件, ID 属性使用默认的 SiteMapDataSource1。在“ Default.aspx”页面再添加一个 TreeView 控件,将 DataSourceID 属性值设为 “SiteMapDataSource1,即连接了数据源,“ Default
13、.aspx”。 第 6 章习题与练习 1. 选择题 1) A 2) B 3) C 4) B 5) B 6) A 7) C 8) C 9) B 10) D 11) B 12) B 13) C 14) A 15) B 2. 填空题 1) continue 2)System.Enum 3)整型、实型、字符型和布尔型 4) if switch 5) 5 6) 封装性、继承性和多态性 7) 值类型、引用类型和指针类型 8) 80 3. 简答题 1) 一个 ASP.NET 的 Web 页面包含以下几个部分: 指令:供编译器处理的 ASP.NET 页面和用户控件时使用的命令。 HTML 标签:作为外观设计的
14、一部分,不能在代码中被访问。 服务器控件:允许用户与页面交互的控件,在服务器上被处理,允许引发服务器端事件。 代码声明块:定义当呈现页时执行的内联代码或内联表达式,放在 标记中。 代码呈现块:把用 C#语言编写的代码放在 标签中。 页面事件:页面触发时的事件。 控件事件:在客户端被用户触发的事件。 2) Page 指令的常用属性 3) public:对任何类和成员都公开,无限制访问; protected:仅仅对该类以及该类的派生类公开; private:仅仅对该类公开; internal:只能值包含该类的程序集中访问该类(只是单独的项目,而不是整个解决方案); protected intern
15、al:只能在本类、派生类或者包含该类的程序集中访问。 4) 值类型直接存储它的数据内容,包括简单数据类型、结构类型和枚举类型;引用类型不存储实际数 据内容,而是存储对实际数据的引用,包括类、字符串、数组、委托和接口等。 值类型的值是存放在堆栈中的,改变其值,不改变变量原有的值,而引用类型的值是存放在栈中的,其引用的地址是存放在堆栈中的,改变其值也就改变了变量原有的值。值类型不允许包含 null 值,然而可空类型可以将 null 赋值给值类型。 5) 装箱转换是指将一个值类型隐式或显式地转换成一个对象类型,或者把这个值类型转换成一个被该值类型应用的接口类型( interface-type)。把一
16、个值类型的值装箱,就是创建一个对象实例并将这个值复制给这个对象,装箱后的对 象中的数据位于堆中,堆中的地址在栈中。被装箱的类型的值是作为一个拷贝赋给对象的。 拆箱转换是指将一个对象类型显式地转换成一个值类型,或是将一个接口类型显式地转换成属性 说 明 AutoEventWireUp 指示页的事件是否自动绑定。如果启用了事件自动绑定,则为 true;否则为 false。默认值为 true Buffer 确定是否启用了 HTTP 响应缓冲。如果启用了页缓冲,则为 true;否则为 false。默认值为 true CodeFile 指定指向页引用的代码隐藏文件的路径 Debug 指示是否应使用调试符
17、号编译该页。如果应使用调试符号编译该页,则为 true;否则为 false。由于此设置影响性能,因此只应在开发期间将此属性设置为 true EnableSessionState 定义页的会话状态要求。如果启用了会话状态,则为 true;如果可以读取会话状态但不能进行更改,则为 ReadOnly;否则为 false。默认值为 true。这些值不区分大小写 EnableTheming 指示是否在页上使用主题。如果使用主题,则为 true;否则为 false。默认值为 true EnableViewState 指示是否在页请求之间保持视图状态。如果要保持视图状态, 则为 true;否则为 false
18、。默认值为 true Inherits 定义供页继承的代码隐藏类。它与 CodeFile 属性(包含指向代码隐藏类的源文件的路径)一起使用 Language 指定在对页中的所有内联呈现( 和 )和代码声明块进行编译时使用的语言。值可以表示任何 .NET Framework 支持的语言,如 C# Theme 指定在页上使用的有效主题标识符。如果设置 Theme 属性时没有使用 StyleSheetTheme 属性,则将重写控件上的单独的样式设置,允许您创建统一而一致的页 外观 Trace 指示是否启用跟踪。如果启用了跟踪,则为 true;否则为 false。默认值为 false 一个执行该接口的
19、值类型。注意装箱操作可以隐式进行但拆箱操作必须是显式的。拆箱过程分成两步:首先,检查这个对象实例,看它是否为给定的值类型的装箱值。然后,把这个实例的值复制给值类型的变量。 4. 程序阅读题 1) 比较两个整数 a 和 b 的大小,若 ab 则返回 1,若 a= =b 则返回 0,若 a= y ? x : y; temp = temp = z ? temp : z; Console.WriteLine(“最大数为: 0“, temp); 2) using System; class Test static void Main() char ch; Console.WriteLine(“请输入一个字符 “); ch = char.Parse(Console.ReadLine(); if (ch = A i-) for (j = 0; j SortArrayj + 1) temp = SortArrayj; SortArrayj = SortArrayj + 1; SortArrayj + 1 = temp; Console.Write(“n 已经排序后的数据序列为 :“); for (i = 0; i n; i+) Console.Write(“0 “, SortArrayi); Console.WriteLine();