


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章1.1填空题I. 计算机只能直接理解仅有1和0组成的 机器 语言。2计算机处理数据时,使用的是被称为 计算机程序的指令集。3. 本章讨论的计算机编程语言的三种类型是:机器语言、汇编语言禾和高级语言。4. 将高级语言程序翻译成机器语言的程序,称为 编译器。5. Visual Studio是一个集成开发环境,C#程序在这个环境下开发。6. C#是一种面向对象、事件驱动的语言。7. C#编程语言是Microsoft专门为.NET平台而创建的。8. 超文本标记语言(HTML )是用来在万维网衫通过“超链”的文 本文档而工程共享信息的一种语言。9. 公共语言运行时(CLR)执行.NET程序。10.
2、 对象具有属性,可执行动作(也称为方法或 行为)。II. 面向对象设计(00D)以与人们描述现实世界类似的方法来建模软件。1.2判断下列语句是否正确。1. UML主要用于实现面向对象的系统。错2. C#是 一种面向对象的语言。对3. C#是编写.NET应用程序的唯一可用语言。错4. 计算机能够直接理解高级语言。错5. 不管原始的.NET语言尺,MSIL都是所有.NET程序编译时的共同中间格式。6.NET框架可移植到非 Windows平台第二章2.1填空题1. 可视化编程技术使程序员能够不必编写任何代码即可创建GUI。2. 方案是一个或多个工程的组合,这些工程共同构成了一个VisualC#程序。
3、3. 当把鼠标指针移到窗口区域以外时,窗口会再次隐藏起来,这一特性被称为自动隐藏。4. 当鼠标指针悬停在图标上时,会出现 工具提示。5. 可以在Solution Explore窗口中浏览方案文件。6. Properties窗口中的属性可以按 字母顺序或类别顺序排序。7. 窗体的Text属性设置窗体标题栏中的文本。8. 工具箱使程序员能够以可视化的方式向窗体添加控件。9. 上下文相互帮助 会根据当前的上下文容显示相关的帮助文件。1O.TextAlign属性指定卷标仲如何对齐文本。2.2判断下列语句是否正确。1.IDE的标题栏显示的是IDE的模式。对24 会触发“自动隐藏”的特性。错3. 工具栏图
4、标代表各种菜单命令。对4. 工具栏包含程序员能够拖入窗体的控件的图标。错5窗体和卷标都有标题栏6只有在编写代码时才能够修改控件的属性。7图形框控件通常显示图像8. C#文件的扩展名为.csharp。9窗体的背景色是用BackColor属性设置的第三章3.1填空题1. 每个方法体以 左大括号() 开始,以右大括号() 结束。2. 大多数语句都以分号(;)结束。3. f语句用来作出判断。4. 单行注释以/开始。5. 空行、空白字符和制表符被称为可能空白字符。换行符也被认为 是空白字符。6. 关键字是C#保留使用的。7. C#程序从Main方法开始执行。8. Console.writeLine 禾廿
5、 Console.write 会在控制台窗口显示信息。3.2判断下列语句是否正确。1. 当执行程序时,程序中的注释会使计算机在屏幕上显示/之后的文本。错2. C#会认为变量number和NuMbEr是相同的。错3. 求余运算符()只能用于整形操作数。错4. 算数运算符 * ,/,%,+,都具有相同的优先级。错3.3 编写语句,完成下列任务。1. 将变量 c, thislsAVariable,q76354和 number声明成 int 类型。Int c, thisIsAVariable, q76354, number;或者lntc;lntthislsAVariable;lntq76354;lnt
6、number;2.提示用户输入一个整数。Console.Write(“Enter an interger:”);3.输入一个整数并将它赋予一个 int 型变量 value。Value=Convert Tolnt32(Console.ReadLine();5. 女口果变量 number不等于 7, 显示“The variable number is not equal to 7”。lf number(!=7)Console.WriteLine( “The variable number is not equal to 7”);6. 在控制台窗口的一行中显示“ this is a C# appli
7、cation”Console.WriteLine( “This is a C# application”);7. 在控制台窗口的两行中显示 “this is a C# application",第一行应以“C#” 结尾,使用 Console.WriteLine 方法。Console.WriteLine(“This is a C#n application");8. 在控制台窗口的两行中显示“this is a C# application”第一行应以“C#”结尾,使用Console.WriteLine方法和两个格式项。Console.WriteLine(“0/n1 ”,“
8、This is a C#”,“ application”);3.4找出并改正以下语句中的错误。1.if(c<7);Console.WriteLine( “C is less than 7”);错误:if语句中条件(c<7)的有圆括号之后的分号错误。改正:将这个分号删除。注:如果不删除分号,则不管 if 中的条件是否为真,输出语句都会执行。 2.if( C=>7)Console.WriteLine( “C is equal to or greater than 7 ”);错误:关系运算符 =>不正确。改正:将 =>改为 >=。3.5 编写声明、语句或注释,完成
9、下列任务。1. 表明程序将计算三个整数的乘积。/Calculating the product of three integers2. 将变量x,y, z和result声明成int型。Int x, y, z, result;或者Int x;Int y;Int z;Int result;3. 提示用户输入第一个整数。Console.Write(“ Enter first interger:”);4. 读取用户输入的第一个整数,并将它保存在变量 x 中。X=Convert ToInt32(Console.ReadLine();5. 提示用户输入第二个整数。Console.Write(“ Enter
10、 second interger:”);6. 读取用户输入的第二个整数,并将它保存在变量 y 中。y =Convert ToInt32(Console.ReadLine();7. 提示用户输入第三个整数。Console.Write(“ Enter third interger:”);8 读取用户输入的第三个整数,并将它保存在变量 z 中。z=Convert ToInt32(Console.ReadLine();9. 计算包含在变量 x, y 和 z 中的三个整数的乘积,并将结果赋值给 变量 result。Result=x*y*z ;10. 显示消息“ Product is ”,后接变量 res
11、ult 的值。Console.WriteLine(“Product is 0 ”,result);3.6利用在练习3.5中编写的语句,写一个完整的程序,它计算并显示三个整数的乘积。Using system;Public class productPublic static void main( string args)Int x;Int y;Int乙Int result;Console.Write( “Enter first interger:” );X=Co nvert ToI nt32(Co nsole.ReadLi ne();Console.Write( “Enter second in
12、terger: ” ); y =Co nvert ToI nt32(Co nsole.ReadLi ne();Console.Write( “Enter third interger:” ); z=Co nvert ToI nt32(Co nsole.ReadLi ne() Result二x*y*z ;Console.WriteLine (“ Product is 0 ”, result); En ter first in teger:10En ter sec ond in teger:20En ter third in teger:30Product is 6000第四章4.1填空题1. 蓝
13、图对于房子而言,就如同 对象对于类一样。2. 每个类声明都包含关键字class,后面紧跟着类的名称。3. 操作符new会创建在它的右边指定的类的对象。4. 每个参数都必须指定 类型和名称。5. 默认情况下,没有在名字空间中显示声明的类,会被隐式的放入全局名字空间中。6. 当类的每个对象维护它自己的属性副本时,表示该属性的字段也被称为实例变量。7. C#为存储实数提供了三种简单类型:float ,double和decimal。8. double类型的变量表示 双精度浮点数。9. Convert 方法 ToDecimal 返回一个 decimal 值。10. 关键字public是一个访问修饰符。1
14、1. 返回类型vo吐表明当方法完成任务后,它不会返回任何信息。12. Console方法ReadLine读取字符,知道遇到换行符,然后返回一个字符串,包含除换行符之外的全部字符。13. 如果总是用完全限定类名引用类,则不要求有using指令。14. float类型的变量表示 单精度浮点数。15. 格式指定符C用于以货币格式显示值。16. 类型是值类型或者仙类型。17. 对于自实现属性,编译器会自动产生一个私有实例变量以及set和get访问方法。4.2判断下列语句是否正确。1按照约定,方法名的第一个字母小写,而后续所有单词的首字母都 大写。错2. 属性的get访问方法使客户能够修改与该属性相关变
15、量的实例变量的值。错3. 当名称空间中的某个类使用同一个名字空间中的另一个类时,不要 求有using指令。4. 如果方法声明中的方法名后面是空圆括号,则表明这个方法执行任 务时不需要任何参数。5. 定义属性后,可以像使用方法一样使用它,但它带的是空圆括号, 因为没有实参会传递给属性。6. 用private访问修饰符声明的变量或方法,只能由声明它们的类的属性和方法访问。对7. 在特定方法体中声明的变量,称为实例变量,它们只能用在这个类的属性和方法访问。错8. 属性声明必须同时包含get访问方法和set访问方法。错9. 方法体或属性体都用左右两个大括号隔离出来。对10. 默认情况下局部变量会被初始
16、化。错11. 引用类型实例变量默认被初始化为 null值对12. 包含 public static void ma in (stri ng args )声明的任何类,都可以用来执行程序。对13方法调用中的实参个数,必须与被调用的方法声明参数表中的参数个数形同。对14默认情况下,出现在源代码中的实数被称为浮点字面文字,都是float类型的。错4.3局部变量与实例变量有什么不同?局部变量在方法体声明,只能用于声明它的方法。实例变量是在 类中声明的,而不是在类的任何方法体声明。类的每个对象(实例) 都有该实例变量的一个单独副本。而且,类的所有方法都可以访问 实例变量。4.4解释方法参数的作用。参数与
17、实参有什么不同?参数代表额外的信息,方法要求这些信息才能执行任务。 方法要求 的每个参数,在方法的声明中指定。实参是当调用方法时传递给方 法参数的实际值。第五章5.1填空题1. 所有的程序都能够以三种控制结构类型编写,这三种结构是 顺序、 选择和循环。2. 当条件为真时执行一个动作,为假时执行另一个动作的语句是iFelse语句。3. 重复执行一组指令特定次数的循环,称为 计算器控制循环。4. 当无法预先知道一组语句将重复执行多少次的时,应使用标记值、信号值、标志值或哑值 来终止这个循环。5. C#中置的语句执行结构是 顺序结构,即默认情况下语句会按照它 们出现的顺序来执行。6. int类型实例
18、变量默认值为0。7. C#是一种强类型化语言,它要求所有的变量都具有类型。8. 如果对变量使用前置递增运算符,则变量的值会首先加1,然后将 它的新值用在表达式上。5.2判断下列语句是否正确。1. 算法是关于要执行的动作以及执行它们的顺序的问题求解过程。 对2. 包含在一对圆括号的一组语句,称为语句块。错3. 选择语句指定当某个条件为真时要重复执行的某一条语句。错4. 嵌套控制语句出现在另一个控制语句的语句体中。对5. C#提供了几个算数复合赋值运算符用来简化赋值表达式,这些运算符包括+=, =,*=,/=和=。对6. 指定在程序中执行语句(动作)的顺序,被称为程序控制。对7. 一元强制转换运算
19、符“(double)”会创建它的操作数的一个临时整数型副本。错8. bool类型实例变量的默认值为true。错9. 伪代码是用来帮助程序员在用编程语言编写程序之前“思考”的。 对5.3编写4条不同的C#语句,它们都将int变量x加1。x=x+1; x+=1; +x; x+;5.4编写C#语句,完成下列任务。1将x和y的和赋值给z,并在计算之后将x的值加1.只使用一条 语句。Z=x+ y ;2. 测试变量count的值是否大于10。如果是,显示“ count is greater than 10”。If (count>10)Console.WriteLine(“Count is great
20、er than 10”);3. 将变量 x 的值减 1,然后用变量 total 与它相减。只是用一条语 句。Total -= -x;4. 计算q除以divisor之后的余数,并将结果赋予 q。以两种方式编写这条语句。q%=divisor; q=q%divisor;5.5编写C#语句,完成下列任务。1.将变量sum 声明为 int 类型。Int sum;2.将变量x 声明为 int 类型。Int x;3.将变量x 赋值 1。X=1;4.为变量sum 赋值 0。Sum=0;5.计算变量x和sum的和,并将结果赋予变量sum。Sum+=x; 或者 sum=sum+x;6. 显示“ The sum i
21、s ”,后接变量 sum 的值。Console.WriteLine(“The sum is 0 ”, sum);110的和。X 的值变为5.6将练习5.5中的语句组合成C#程序。计算并显示整数使用 while 语句循环计算语句和递增语句。循环应当在11 时终止。Using system;Public class CalculatePublic static void Main (string args)Int sum;Int x;X=1;Sum=0;While (x<=10)Sum+=x;+x;Console.WriteLine(“The sum is 0 ”,sum);The sum
22、is 555.7执行下列语句后,确定变量的值,假设开始执行语句时,所有变量的类型都为int,且都有值5。Product *=x+ ;Product=25 , x=65.8找出并更正如下代码段中的错误。l. while (c<=5)Product *=c;+c;错误:忘记了 while语句的闭右括号。改正:在语句“ +c;”之后添加一个闭右括号。2. if (ge nder =1 )Console.WriteLine( Woman”);else ;Console.WrieLine( Man”);错误:else之后的分号会导致逻辑错误。第二条输出语句会总是执行。 改正:将这个分号删除。5.9
23、下面的while语句中有什么错误?While( z>=0)Sum+=z;While语句中变量z的值永远不会改变。因此,如果初始时循环 继续条件(z>=0)为真,则会出现无限循环。为了防止出现无限循环, 必须递减Z的值,以使它最终变为小于 0。第六章6.1填空题1. 一般而言,虹语句用于计算器控制循环,而 while语句用于标记 控制循环。2. do while语句在执行循环体之后测试循环继续条件,因此循环 体总是至少会执行一次。3. 根据整形变量或表达式可能的值,switch语句会在多个动作中间 进行选择。4. 当在循环语句中执行时,continue语句会跳过循环体中的剩余语 句,
24、继续进行循环的下一次迭代。5. && (条件与)或& (布尔逻辑与)运算符在选择某个执行路径之 前,可用来确保两个条件都为真。6. 如果在for首部中的循环继续条件最初为 假,则不会执行for语句 体。7. 执行通用任务、不需要在对象上调用的方法,被称为 静态方法。6.2判断下列语句是否正确。1. 在switch选择语句中,要求有默认分支。错2. 在switch语句的每一个分支中,都要求有 break语句。错3. 如果(x>y)为真,或者(avb)为真,则表达式(x>y) &&(a<b)就为真。错4. 如果包含|运算符的表达式的两个操作
25、数有一个为真或者两个都为真,则这个表达式就为真。 对5. 格式项(例如0.4 )中逗号后面的整数表示要显示的字符串的字段 宽度。 对6为了测试switch语句中的值得围,需在分支标签的起始值和结尾值 之间使用连字符() 。 错7. 连续地列出多个分支,让它们之间没有语句,可使这些分支执行同 一组语句。对6.3编写一条或一组C#语句,完成下列任务。1. 使用一条 for 语句,求 199de 奇数和。假设已经声明了整形变量 sum 和 count。Sum=0;For(count=1; count<=99;count +=2)sum +=count;2. 用Pow方法计算2.5的三次幕。do
26、uble result= Math.Pow(2.5 , 3);3. 使用while循环和计算器变量i,显示120的整数。假设已经 声明了变量 i ,但没有初始化它,每行显示五个整数。提示:利用i%5。当它的结果为0时,显示一个换行符,否则显示一 个制表符。使用Console.WriteLine()方法输出换行符,而使 用console。Write t' 方法输出制表符。i=1;while (i<=20)Console.write ( i ) if(i%5=0)Console.writeline();elseConsole.Write(t');+i;4. 用 for 语句解
27、第 3 题部分同样的问题 for (i=1; i<=20; i+)Console.Write( i );if (i%5=0)Console.writeline();elseConsole.Write(t');6.4 找出如下代码中的错误并改正。1. i=1 ;While (i<=10 );+i;错误: while 首部后面的分号会导致无限循环,且 while 语句体中 缺失左大括号。改正:删除分号并在循环体之前添加一个左大括号。2. for (k=0.1; k!=1.0; k+=0.1)Console.WriteLine(k);错误:使用浮点数来控制 for 语句可能会出现
28、错误,因此在大多数 计算机中,浮点数是近似表示的。改正:使用整数,且为了获得所期望的值需执行正确的计算,如下 所示。for (k=1, k<10; k+)Console.WriteLine(double) k / 10);3. switch (n)case 1:Console.WriteLine(“The number is 1”);case2:Console.WriteLine(“The number is 2”);break;default :Console.WriteLine(“The number is not 1 or 2”);break;错误:分支1不能落入分支2中。改正:应
29、以某种方式终止分支,比如在第一个分支的语句末尾添加一条break语句。5. 下面的代码应显示值110。n=1;while (n 10)Con sole.WriteLi ne(n+);错误。在while循环继续条件中使用了错误的关系运算符。改正:将 替换成二,或者将10改成11。第七章7.1填空题。a)在程序中使用方法是通过 方法调用 实现的。b)只在声明它的方法中可知的变量,称为 局部变量。c)被调方法中return语句可用来将表达式的值回传给调用方法。d)关键字void表示方法不返回值。e)数据只能从栈的 顶 添加或删除。f)栈被称为 后入先出(LIFO )的数据结构压入栈(插入)的最后一项
30、,是从栈中弹出(移走)的第一项。g)有三种途径可将控制从被调方法返回到调用方法,它们是return、return expression 禾和 遇到方法的闭右括号时 。h)Random类的对象处理伪随机数。i)在程序执行期间,程序执行栈里包含每次调用方法时用到的局部变量的存。这一数据作为程序执行栈的一部分被保存,它被称为方法调用的活动记录或栈帧。j)如果方法调用的个数超过了程序执行栈的容量, 就会发生称为 栈溢 出的错误。k)声明的 作用域 是程序中可以用非限定名引用所声明实体的部分。l)多个方法可以具有相同的名称,它们对不同类型或数量的实参进行 操作。这一特性被称为方法重载。m)程序执行栈也被
31、称为 方法调用 栈。n)直接或间接调用自己的方法,是递归 方法。o)递归方法通常具有两个部分:提供通过测试 基本情况 终止递归的 部分,和将问题表述成一个递归调用,比原始调用稍微简单一些的部 分。7.2对于图7.8中的Craps类,给出如下每个实体的作用域。a)ra ndomNumbers 变量。类体b)diel 变量。定义RoIIDice方法体的语句块。c)RollDice 方法类体。d)Main 方法。类体。e) sumOfDice 变量。定义 Main 方法体的语句体。7.3 编写一个程序,它测试图 7.2 中给出的 Math 类方法调用的例子 是否真的会产生所给出的结果。1 /Exer
32、sise 7.3 Solution:Math Test.cs2 /Testing the Math class methods.3 using System;45 public class MathTest6 7 public static void Main( string args )8 9Console.WriteLine(“ Math.Abs( 23.7 ) =0 ”,Math.Abs(23.7 ) ;10Console.WriteLine(“ Math.Abs( 0.0) =0 ”,Math.Abs(0.0 );11Console.WriteLine(“ Math.Abs( -23.
33、7 ) = 0,Math.Abs(-23.7 );12Console.WriteLine(“Math.Ceiling(9.2)=0513 Math.Ceiling(9.2);14 Console.WriteLine(“Math.Ceiling( -9.8 ) = 015 Math.Ceiling ( -9.8 );Console.WriteLine(“Math.Cos(0.0 )= 0 ”,Math.Cos0.0);Console.WriteLine(“Math.Exp(1.0 )= 0 ”,Math.Exp1.0);Console.WriteLine(“Math.Exp(2.0)0 ”,Ma
34、th.Exp2.0);16(17(18(19(2021222324252627282930313233Console.WriteLine(“Math.Floor( 9.2 ) = 0 ”,Math.Floor9.2 );Console.WriteLine(“Math.Floor( -9.8) = 0” ,Math.Floor ( -9.8);Console.WriteLine(“Math.Log( Math.E) = 0 ” ,Math.Log ( Math.E );Console.WriteLine( “Math.Abs( Math.E*Math.E ) = 0Math.Abs ( Math
35、.E*Math.E );Console.WriteLine( “Math.Max( 2.3,12.7) = 0”Math.Max ( 2.3,12.7 );Console.WriteLine(“ Math.Max( -2.3,-12.7) = 0Math.Max ( -2.3,-12.7 );Console.WriteLine(“ Math.Min( 2.3,12.7) = 0”Math.Min ( 2.3,12.7 );Console.WriteLine( “Math.Min( -2.3,-12.7) = 0Math.Min ( -2.3,-12.7 );34Console.WriteLin
36、e(“ Math.Pow( 2.0,7.0)= 0” ,35Math.Pow ( 2.0,7.0 );36Console.WriteLine(“ Math.Pow( 9.0,0.5)= 0” ,37Math.Pow ( 9.0,0.5 );38Console.WriteLine( “Math.Sin(0.0)= 0 ” ,Math.Sin( 0.0 );39Console.WriteLine( “ Math.Sprt( 900.0) =0” ,40Math.Sprt ( 900.0 );41Console.WriteLine( “ Math.Tan( 0.0)= 0 ” ,Math.Tan(
37、0.0 );42 /end main43 /end class MathTest7.4 为如下每个方法给出方法的首部、a) Hypotenuse 方法,它带有两个双精度浮点参数 side1 和 side2 , 返回一个双精度浮点结果。double Hypotenuse(double side1,double side2)b) Smallest 方法,它有三个整型参数 x,y 和 z ,返回一个整数。int Smallest(int x,int y,int z)c) Instructions 方法,它不带任何参数,且不返回任何值。 【注:这 样的方法通常用来向用户显示指令。 】void Inst
38、ructions()d) IntToDouble 方法,它带一个整型参数 number, 返回一个 double 值。double IntToDouble(int number)7.5 找出并更正下列代码段中的错误。a) void G()Console.WriteLine("Inside method G");void H()Console.WriteLine("Inside method H");b) int sum(int x ,int y)int result ; result= x+y;c) void F(float a);float a;Con
39、sole.WriteLine(a);d) void Product()int a=6,b=5,c=4,result;result=a*b*c;Console.WriteLine("Result is "+result);return result;答案:a)错误:方法H在方法G声明。改正:将H的声明移到G勺声明之外。b) 错误:方法应当返回一个整数值,但没有。改正:删除 result 变量并在方法中放入语句: return x+y; 或者在方 法体的末尾添加如下的语句: return result ;c) 错误:参数表右圆括号后面的分号错误,且参数 a不应该在方法重 复声明
40、。改正:删除参数表右圆括号后面的分号,并删除声明 float a; 。d) 错误:方法不应该返回值。改正:将返回类型从void改为int。7.6编写一个完整的C#程序,它提示用户输入一个球的半径 (double 类型),然后调用 Sphere Volume 方法计算并显示它的体积。使用下 列语句计算体积:double volume =(4.0/3.0)*Math.PI*Math.Pow ( radius , 3 )/Exercise 7.6 Solution:Sphere.cs/Calculate the volume of a sphereusing System; public class
41、 Sphere/obtain radius from user and display volume of sphere public static void Main(string args)Console.Write("Enturn radius of sphere:");double radius Convert.ToDouble(Console.ReadLine();isMath.PIConsole.WriteLine("Volume 0:F3",SphereVolume(radius);/end main/calculate and retur
42、n sphere volumepublic static double SphereVolume(double radius) double volume = (4.0 / 3.0) *Math.Pow(radius, 3);return volume; /end method SphereVolume/end class SphereEntupffi padius of sphepeUolune is 2£8.093第八章8.1填空题a)值列表和数值表可以保存在数组中。b)数组是一组变量(称为元素),它们包含具有相同 类型的值。c)foreach语句使程序员能够不使用计算器迭代遍历
43、数组中的元素。d)引用特定数组元素的数字,被称为元素的索引。e)使用两个索引的数组,被称为 二维数组。f)用foreach语句首部foreach迭代遍历double类型的数组numble。g)命令行实参保存在一个字符串数组 中,称为args。h)使用表达式args.Lergth可获得命令行中实参的全部数量。假设命 令行实参保存在stringargs 中。i)对于命令 My Application test第一个命令行实参是test。j)方法参数表中的params修饰符表示方法可以接收的实参数量8.2判断下列语句是否正确。(错)a)一个数组就可以保存许多不同类型的值。b)数组索引通常应为 flo
44、at 类型。 (错)c)当被调方法完成执行时, 传递给方法和在该方法中修改的各个数组 元素将包含修改后的值。(错)d)命令行实参用逗号分隔。 (错)8.3 为数组 fractions 执行下列任务。a)声明变量ARRAY_SIZ并将它初始化为10。const int ARRAY_SIZE=10;b)声明变量farctions ,它引用double类型。包含ARRAY_SIZ个元 素的数组。将这些元素初始化为 0。doublefractio ns二 new doubleARRAY_SIZE;C)为索引号为3的数组元素命名。fractions3;d)将索引号为9的数组元素赋值为1.667。frac
45、tions9=1.667;e)将索引号为6的数组元素赋值为3.333。fractions6=3.333;f)使用一条 for 语句,求数组所有元素的和。 将整型变量 x 声明成循 环的控制变量。Double total=0.0;For(int x=0;x<fractions.Length;x+)Total+=fractionsx;假设常量8.4 为数组 table 执行下列任务。a) 声明这个数组变量,并用3行3列的矩形数组初始化它ARRAY_SIZ已经被声明成3。In t,table二 newi ntARRAY_SIZE,ARRAY_SIZE;b) 这个数组包含多少元素。9 个。c)
46、用 for 语句将数组的每个元素初始化成数组索引之和。For(i nt x=O;x<table.GetLe ngth(O);x+)For(int y=0;y<table.GetLength(1);y+)Tablex,y=x+y;8.5 找出并更正下列代码段中的错误。Const int ARRAY_SIZE=5;ARRAY_SIZE=10;错误:在常量被初始化之后,不能再对它赋值。改正:在 const 声明中对常量赋予正确的值。b) 假设 intb=new int10;for(int i=0;i<=b.Length;i+)bi=1;错误:在元素边界的外面( b10 )引用了数组
47、元素。改正:将 <=运算改成 <。c) 假设 int, a1,2,3,4;a11=5;错误:对数组执行索引的操作不正确。改正:将语句改成a1,1=5;。第九章:9.1填空题。a)使用List类的count属性,可以得到List中的元素数量。b)LINQ的where子句用于过滤。c)集合类是特别设计用于存储对象组并提供组织、存储和取得这些对象的方法的。d)为了将元素追加到List的末尾,应使用Add方法。e)为了从 LINQ 查询中获得不包含重复值的结果,应使用Distinet。9判断下列语句是否正确。a)LINQ查询中的orderby子句只能按升序排序查询结果。(错)b)LINQ查
48、询能用于数组和集合。(对)c)List类的Remove方法删除指定索引处的元素(错)第十章:1.填空题。a)string 类的 Format 静态方法类似于 console.write 方法,但它 返回格式化的字符串,而不是在控制台窗口显示字符串。b)如果方法包含与某个字段同名的一个局部变量,则该局部变量将 隐瓦该方法作用域的这个字段。c)在释放对象的存之前,存回收器会调用析构函数。d)如果类声明了析构函数,则编译器不会创建.默认构造函数。e)对象出现在代码中需要字符串的地方时,可以隐式调用对象的Tostring 方法。f)有时,合成被称为“有”关系。g)静态 变量表示类际信息一类的所有对象共
49、享这个变量。h)最小权限原则要求代码只能分配完成指定任务所需的访问i)用关键字readonly声明的实例变量指定该变量时不可修改的。j)抽象数据类型(ADT )包含数据表达和该数据允许得操作。k)类的公共方法也被称为类的公共服务 或 公共接口。10.2假设Book类定义了属性Title,Author和Year。利用对象初 始化器来创建Book类的一个对象并初始化它的属性。答案:new Book Title = ” visual C # 2010 HTP ”,Author = ” Deitel”, Year=2010第十一章:11.1填空题。a)在软件复用的 继承 形式中,新的类会利用已经存在的
50、类的成员并 用新的能力增强这些类。b)基类的protected 成员只能在基类声明和派生类声明中访问。c)在“是”或继承关系中,派生类的对象也可以看成它的基类的 对象。d)在有”或合成 关系中,类对象包含作为其他类对象的引用的成员。e)在单一继承中,基类和它的派生存在一种层次 关系。f)当程序具有基类或它的派生类的引用时,可以在任何地方访问这个 基类的公共成员。g)当实例化派生类的对象时,基类构建函数被隐式或显式地调用。h)派生类构造函数可以通过 base关键字调用基类构造函数。11.2判断下列语句是否正确。a)基类构造函数不被派生类继承。(对)b)“有”关系式通过继承实现的。(错)c)Car
51、类与SteeringWheel类和Brakes类具有“是”关系。(错)d)继承鼓励当派生类经过验证的高质量软件的复用。(对)e)当派生类用相同的签名和返回类型重定义基类方法时,就称派生类重载基类方法。(错)第十二章:12.1填空题。a)如果这个类至少包含一个抽象方法,则它必须被声明成抽象 类。b)其对象能够被实例化的类,被称为具体类。c)多态利用基类变量调用基类或派生类对象上的方法,使程序员能够实现“通用编程”。d)类中不提供实现的方法,必须用 abstract关键字声明。e)将基类变量中的引用强制转换成派生类类型,被称为 向下强制转换。12.2判断下列语句是否正确。a)可以将基类对象看成与派生类对象类似。(对)b)抽象类中的所有方法,都必须被声明成抽象的。(错)c)试图通过基类变量
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 音乐产业版权运营与音乐版权保护技术创新趋势与产业应用研究报告
- 社区零售业态创新与数字化社区活动运营报告
- 金融数据治理与资产化技术应用前景报告
- 报奖创优管理办法
- 权属公司管理办法
- 收入管理办法铁路
- 报审报建管理办法
- 面向2025的生态环境修复工程资金申请与生态修复技术报告
- 执业记分管理办法
- 数字艺术市场:2025年交易平台创新与艺术品拍卖市场分析报告
- 2025年软件定义汽车:SOA和中间件行业研究报告
- 发改价格〔2007〕670号建设工程监理与相关服务收费标准
- 收购江西龙虎山仙水岩景区经营权评估论证报告
- 06客户投诉处理及管理作业指导书
- 发电项目660MW机组电气专业主要施工技术方案
- 伦茨SMD变频器操作手册
- 云南省地质灾害群测群防手册
- 微轻子勘探技术-之一终
- 钢结构维护保养方案
- 外研社三年级起点英语五年级上册带音标单词表(共4页)
- 环氧树脂灌封及灌封材料——组分
评论
0/150
提交评论