精通C#4.0程序设计第1-14章习题答案段付保段赵磊

上传人:飞*** 文档编号:26893471 上传时间:2018-01-03 格式:PDF 页数:11 大小:132.47KB
返回 下载 相关 举报
精通C#4.0程序设计第1-14章习题答案段付保段赵磊_第1页
第1页 / 共11页
精通C#4.0程序设计第1-14章习题答案段付保段赵磊_第2页
第2页 / 共11页
精通C#4.0程序设计第1-14章习题答案段付保段赵磊_第3页
第3页 / 共11页
精通C#4.0程序设计第1-14章习题答案段付保段赵磊_第4页
第4页 / 共11页
精通C#4.0程序设计第1-14章习题答案段付保段赵磊_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《精通C#4.0程序设计第1-14章习题答案段付保段赵磊》由会员分享,可在线阅读,更多相关《精通C#4.0程序设计第1-14章习题答案段付保段赵磊(11页珍藏版)》请在金锄头文库上搜索。

1、第 1 章 习题答案一、选择题(1)D (2)A (3)C (4)D (5)D 二、简答题(1) 参考第 1.1.3 节内容。(2) C# 集成开发环境中主要有起始页、设计器视图与代码视图、解决方案资源管理器与类视图、工具箱与服务器资源管理器、属性与动态帮助等。(3) 命名空间既是 Visual Studio.NET 提供系统资源的分层组织方式, 也是分层组织程序的方式。命名空间有两种:一种是系统命名空间,一种是用户自定义命名空间。第 2 章 习题答案一、选择题(1) AC (2) B (3) BC (4) D (5) A (6) B (7) ABCD (8) B (9) A (10) D 二

2、、简答题(1) 答: C#中变量命名规则如下: 变量名的第一个字符必须是字母或下划线,其余字符必须是字母、数字或下划线。变量名不能是 C#的关键字或库函数名。(2) 答: 值类型变量直接包含其本身的数据, 因此每个值类型变量本身就包含有赋给它的值。与值类型不同, 引用类型变量本身不包含数据, 只是存储对数据的引用, 数据保存在内存的其他位置。(3) 答: 结构与枚举都属于值类型。 结构类型可以用来处理一组类型不同、 内容相关的数据。枚举类型是由用户定义的一组整型符号常量, 使用枚举可以将一组相关的有限常量组织在一起,保证变量只能具有预定的值。第 3 章 习题答案一、选择题(1) A (2) D

3、 (3) C (4) D (5)A (6)A (7)B (8)B 二、简答题(1) 描述一下 C#中索引器的实现过程,是否只能根据数字进行索引?答:可以用任意类型实现索引器。(2) 解释类的静态成员和非静态成员的区别,说明如何引用静态成员和非静态成员。答:类的静态成员是类的所有实例公有的,使用类名 .成员名进行引用;类的非静态成员是类的某个实例所有的,使用对象名名 .成员名进行引用。(3) 说明 String 类和 String Builder 类的区别。答: String 类在进行字符串运算时(如赋值、字符串连接等)会产生一个新的字符串实例,需要为新的字符串实例分配内存空间, 相关的系统开销

4、可能会非常昂贵。 如果要修改字符串而不创建新的对象,且操作次数非常多,则可以使用 StringBuilder 类,例如,当在一个循环中将许多字符串连接在一起时。 StringBuilder 类在原有字符串的内存空间上进行操作,使用StringBuilder 类可以提升性能。第 4 章 习题答案一、选择题(1) D (2) A (3) A (4) A (5)D (6)B (7)D (8)B 二、简答题(1) C#中的委托是什么?事件是不是一种委托?答:委托可以把一个方法作为参数代入另一个方法,委托可以理解为指向一个函数的引用。是,事件是一种特殊的委托。(2) override 和重载的区别是什么

5、?答:重载是方法的名称相同,参数或参数类型不同,进行多次重载以适应不同的需要。override 是在派生类进行基类中函数的重写,为了适应派生类的需要。(3) 概述序列化的原理和作用。序列化:将对象转换为另一种媒介传输的格式过程。如,序列化一个对象,用 Http 协议通过 internet 在客户端和服务器之间传递该对象, 在另一端用反序列化从该流中重新得到对象。第 5 章 习题答案1. 简述为什么要进行异常处理。答:在程序运行过程中,经常可能发生各种不可预测的意外情况,如被零除情况或内存不足警告等意外情况, 也就是异常。 异常处理是为了识别和捕获运行时的错误。 当程序引发异常时, 如果没有适当

6、的异常处理机制, 程序将会终止, 并使所有已分配的资源保持不变,这样会导致资源泄露。2. 简述逐语句和逐过程两种调试方式的区别。答:逐语句和逐过程是两种不同的单步调试的方式。“逐语句”和“逐过程”的差异仅在于它们处理函数调用的方式不同。这两个命令都指示调试器执行下一行的代码。如果某一行包含函数调用, “逐语句”仅执行调用本身,然后在函数内的第一个代码行处停止。而“逐过程”执行整个函数,然后在函数外的第一行处停止。如果要查看函数调用的内容,请使用“逐语句” 。若要避免单步执行函数,请使用“逐过程” 。使用逐语句的方式进行单步调试,可以从“调试”菜单中选择“逐语句”命令,进行调试。使用逐过程的方式

7、进行单步调试,可以从“调试”菜单中选择“逐过程”命令,进行调试。3. 编写一个程序,使用两种不同类型数据进行加法运算,并使用异常处理语句捕获由于数据类型转换和算数运算错误而引发的异常。答:设计程序界面如下图。双击 button1 ,在 button1 的 Click 事件中添加 button1_Click 方法,该方法的代码如下。try double num1 = double.Parse(textBox1.Text); double num2 = double.Parse(textBox2.Text); double result = num1 + num2; textBox3.Text =

8、 result.ToString(); catch textBox3.Text = 运算错误,请输入正确的运算数字! ; 使用如下下表中的 Testcase测试程序。Testcase1 测试程序是否能正确进行数字运算。步骤 1 在第一个运算数中输入“ 0.001”,在第二个运算数中输入“ -0.00001 ”。步骤 2 单击“ =”按钮,计算运算结果。步骤 3 检查程序的运算结果是否等于两个运算数的和“ 0.00099”。Testcase2 测试程序是否能处理错误的运算数。步骤 1 在第一个运算数中输入“ 0.0-01 ”,在第二个运算数中输入“ -0.00001”。步骤 2 单击“ =”按钮

9、,计算运算结果。步骤 3 检查程序的运算结果是否为“运算错误,请输入正确的运算数字!”。可以再添加一些更多的 Testcase 测试程序。第 6 章 习题答案一、选择题(1) B (2) A (3) B (4) D (5) C 二、简答题(1) 简述下拉菜单的基本结构。答: 有文字的单个命令称菜单项, 顶层菜单项是横着排列的, 构成了菜单栏。 单击某个顶级菜单项(或菜单项)后弹出的称为一级菜单(或子菜单) ,它们均包含若干个菜单项。菜单项有的是变灰显示的, 表示该菜单项当前是被禁止使用的。 有的菜单项的提示文字中有带下划线的字母,该字母称为热键(或访问键) ,若是顶层菜单,可通过按“ ALT+

10、 热键”打开该菜单, 若是某个子菜单中的一个选项, 则在打开子菜单后直接按热键就会执行相应的菜单命令。 有的菜单项后面有一个按键或组合键, 称快捷键, 在不打开菜单的情况下按快捷键, 将执行相应的命令。有的菜单项之间有一个灰色的线条,该线条称为分隔线或分隔符。(2) 对话框按显示方式可分为哪几类,它们之间有何区别?答:对话框按显示方式分为模态对话框和非模态对话框。它们之间的区别是:模态对话框就是指当对话框弹出、 显示的时候, 用户不能单击这个对话框之外的界面区域。 用户要访问界面上的其它对象, 必须先关闭模态对话框。 模态对话框通常用来限制用户必须完成指定的操作任务。例如, Microsoft

11、 Word 的“字体”对话框。模态对话框使用ShowDialog 方法显示。非模态对话框通常用于显示用户需要经常访问的控件和数据, 并且在使用这个对话框的过程中需要访问其它用户界面对象的情况。 用户要访问界面上的其它对象, 不必关闭非模态对话框。 例如 Microsoft Word 的 “查找和替换” 对话框。 非模态对话框使用 Show 方法显示。三、操作题见文件夹第 7 章 习题答案一、选择题( 1) D( 2) C( 3) B( 4) A( 5) B 二、简答题( 1)什么是 GDI+ ? GDI+ 有什么功能?GDI+ ( Graphics Devic e Interface Plus

12、 )是微软在 Windows 2000 以后操作系统中提供的新的图形设备接口,其通过一套部署为托管代码的类来展现,这套类被称为 GDI+的 “ 托管类接口 ” 。GDI+ 主要提供了绘制二维矢量图形的类, 这包括存储图形基元自身信息的类 (或结构体 )、存储图形基元绘制方式信息的类以及实际进行绘制的类。此外,还提供了文字显示功能,可以使用各种字体、字号和样式来显示文本。( 2)简述绘图的一般步骤。一般来说, GDI+ 绘图程序包含下面四步:第一步,创建 Graphics 对象。第二步,创建绘图工具并设置相应的属性。第三步,使用 Graphics 对象的方法进行图像绘制、文本显示等。第四步,释放

13、 Graphics 对象、绘图工具等资源。( 3)什么是画图工具?画图工具一般包含什么?画图工具是 System.Drawing 命名空间中的类,用来绘制线条和填充区域。画图工一般包含画笔和画刷。画笔的功能是用来画线, C#中用 Pen 类来实现画笔。画刷的功能是用来填充图形的内部, C#中用 Brush 类来实现画刷。三、编程绘制下面的图形( 1)绘制直线、矩形、椭圆和圆弧,并设置线条颜色分别为红色、绿色、蓝色和黄色,线条宽度分别为 1、 2、 3 和 4,线条类型分别为实线、点线、划线和划线点。 (答案参见本章例 7.2、例 7.3、例 7.5 和例 7.6)( 2) 用单色画刷填充矩形和

14、多边形, 并设置填充颜色分别为红色和绿色。 (答案参见本章例 7.11 和例 7.12)用渐变画刷填充椭圆和饼形,并设置颜色分别从红色水平过渡到蓝色和从绿色垂直过渡到蓝色。 (答案参见本章例 7.1)( 3) 绘制三串不同的文字, 这三串文字分别为宋体、 楷体和隶书, 字体颜色分别为红色、绿色和蓝色,字体大小分别为 10, 20 和 30,字体样式分别为粗体、斜体和下划线。 (答案参见本章例 7.16)第 8 章 习题答案一、选择题(1) B (2) C (3) D (4) A (5)D 二、简答题(1) 简述 System.IO 模型及其作用。答: System.IO 模型提供了一个面向对象

15、的方法来访问文件系统,提供了很多针对文件、文件夹的操作功能,特别是以流( Stream)的方式对各种数据进行访问,这种访问方式不但灵活,而且可以保证编程接口的统一。System.IO 模型实现包含在 System.IO 命名空间中,该命名空间包含允许在数据流和文件上进行同步和异步读取及写入、提供基本文件和文件夹操作的各种类,即: System.IO 模型是一个文件操作类库,包含的类可用于文件的创建、读 /写、复制、移动和删除等操作。(2) 简述 System.IO 模型中借助文件流进行文件操作的常用步骤。答: System.IO 模型中,借助文件流进行文件操作的常用步骤是:a.用 File 类

16、打开操作系统文件;b.建立对应的文件流即 FileStream 对象;c. 用 StreamReader/StreamWriter 类提供的方法对文件流(文本文件)进行读写或用BinaryReader/BinaryWriter 类提供的方法对文件流(二进制文件)进行读写。三、操作题见文件夹第 9 章 习题答案1. 为什么要使用多线程?多线程适用于那些应用?答:在运行一个比较耗时的任务时,如果采用采用单线程机制的话,那么主线程会不断地处理该任务,从而无暇处理用户交互的要求。 。一般情况下,需要用户交互的软件都必须尽可能快地对用户的活动做出反应, 以便提供更好的用户体验。 有了线程的概念, 操作系统在执行长时间运行的任务时, 也能随时响应其他的应用程序。 另外, 线程允许用户使用一个应用程序(例如:任务管理器)强行终止已经“冻结”的那个应用程序。多线程适用于以下任务: 通过网络进行通信的任务、 执行占用长时间的操作的任务、 区分具有不同优先级的任务。2. 简述线程是如何创建的?怎样设置线程的优先级?答:创建线程分两步

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 销售管理

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号