C#程序设计教程(第2版)课后习题完全版

上传人:宝路 文档编号:7663817 上传时间:2017-09-23 格式:DOCX 页数:8 大小:32.66KB
返回 下载 相关 举报
C#程序设计教程(第2版)课后习题完全版_第1页
第1页 / 共8页
C#程序设计教程(第2版)课后习题完全版_第2页
第2页 / 共8页
C#程序设计教程(第2版)课后习题完全版_第3页
第3页 / 共8页
C#程序设计教程(第2版)课后习题完全版_第4页
第4页 / 共8页
C#程序设计教程(第2版)课后习题完全版_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《C#程序设计教程(第2版)课后习题完全版》由会员分享,可在线阅读,更多相关《C#程序设计教程(第2版)课后习题完全版(8页珍藏版)》请在金锄头文库上搜索。

1、C#复习较完全版第一章.Net 与 C#一、选择题1.CLR 是一种 运行环境2.C#语言源代码文件的后缀名为 CS3.构建桌面应用程序需要.NET 提供的类库是 Windows Form 4.与 C+等语言相比, C#中增加的一个类成员访问修饰符是 internal5.C#中导入某一命名空间的关键字 using 6.C#中程序的入口方法名是 Main 二、简答题1.简述 C#、CLR 和.NET 之间的关系答:.NET 是一个运行时平台,CLR 是.NET 框架的底层。C#是.NET 的核心开发语言2.简述 C#语言的主要特性答:简单性(无指针) ;现代性(异常处理跨语言) ;面向对象(封装

2、,继承和多态) ;类型安全性;版本处理技术;兼容性;灵活性3.什么是.NET 框架?简述.NET 框架的结构P3 图 1-14.简述.NET 应用程序的编译过程。答:各种.NET 应用程序,通过被编译成中间语言(IL) ,经过 JIT(Just In Time)编译器再次将IL 编译形成机器码。5.常用的命令按钮、标签、文本框等控件在哪个工具箱中?答:“所有 Windows 窗体” 。6.C#可以开发哪些类型的应用程序?7.简述控制台方式和 Windows 应用程序方式调试程序的优缺点,各自适合的场合答:一般来说控制台方式用于在 dos 状态下打印输出程序结果的,优点是程序执行效率较高,而 w

3、indows 应用程序一般用于开发窗体应用程序或者系统的,优点是功能比较强大,代码执行效率相对来说较慢。第二章 C#编程基础一、选择题1.C#中的值类型包括三种,它们是 简单类型、枚举类型、结构类型。(C )2.枚举类型是一组命名的常量集合,所有整型都可以作为枚举类型的基本类型,如果类型省略,则约定为 int 。(C)3.C#的引用类型包括类、接口、数组、委托、object 和 string。其中 object(是所有值类型和引用类型的)根类。(D )4.浮点常量有三种格式,0.618034 ,0.618034D,6.1834E-1 浮点常数都属于 double 类型。(A)5.下面字符常量表

4、示有错的一组是(B) A,u0027,x0027 Bn,t,037只能是单个字符Ca,u0061,(char)97 D x0030,0,06 下列标识符明明正确的是(A)A _ int, Int, int B using, _using, using C NO1,NO_1,NO.1 D A3,_A3,A37.当表达式中混合了几种不同的数据类型时,C#会基于运算的顺序将他们自动转换成同一类型。(float)类型和 decimal 类型混合在一个表达式中,不能自动提升为 decimal。(A)8.设有说明语句 int x=8;则下列表达式中,值为 2 的是(B)A x+=x-=x; B x%=x-

5、2; C x8?x=0:x+; D x/=x+x;9.C#数组主要有三种形式;它们是( 一维数组、多维数组、不规则数组)。(C)10 设有说明语句 double , , tab= new double2,3,4;那么下面叙述正确的是 (A)tab 是一个三维数组,他的元素个数一共有 24 个二、简答题1.说明下列标识符的合法性X.25 错 4foots 错 exam-1 错 using 错 main 对 Who_am_I 对Large&Small 错 _Years 对 val(7) 错 2xy 错2.下列常量是否合法?若不合法,指出原因;若合法,指出它的数据类型。32767 int 35u u

6、int 1.25e3.4 不合法 3L long 0.0086e-32 不合法87 不合法 true 布尔 “a” 字符串 a 字符 9645 不合法 .5 double 5UL 长整型3.指出下列哪些表示字符,那些表示字符串,那些既不表示字符也不表示字符串0x66-错 China-错 0x33-错(4 位) r-(回车字符) 8.34 -错 0 字符(转义空字符) “中国” 字符串 “8.42”字符串 56.34错 “nt0x34”字符串 -(反斜线字符) “0x33”字符串 “Computer System!n” 字符串 docsharemy1.doc-字符串 ”docsharemy1.d

7、oc” -逐字字符串“Joe said” “Hello” “to me” -逐字字符串 “Joe said “Hello” to me”字符串4.将下列代数式写成 C#的表达式(1)ax 2+bx+c(2)(x+y) 3(3)(a+b)/(a-b)5.计算下列表达式的值(1)x+y%4*(int)(x+z)%3/2,其中 x=3.5,y=13, z=2.5;(2)(int)x%(int)y+(float)(z*w),其中 x=2.5,y=3.5,z=3,w=4。6.原来的 a 都是 101)a+=a; 20 2)a%=(7%2); 0? 3)a*=3+4; 70 4)a/=a+a; 0.5 5

8、)a-=a; 0 6)a+=a-=a*=a; -80三、填空题1.C#中可以把任何类型的值赋给 object 变量,当值类型赋给 object 类型变量时,系统要进行装箱操作;而将 object 类型变量赋给一个值类型变量,系统要进行拆箱操作,并且要求必须加强制类型转换2.C#所特有的不规则数组是数组的数组,也就是说它的数组元素是数组,并且它的内部每个数组的长度不一样3.数组在创建时可根据需要进行初始化,需要注意的是初始化时,不论数组的维数是多少,都必须现实的初始化数组的所有元素4.程序运行结果为_1_2_0_true_Using System;Public class Exe1public

9、static void Main( )int x,y,z;bool s;x=y=z=0;s=x+!=0|+y!=0&+y!=0;Console.WriteLine(“x=0,y=1,z=2,s=3”,x,y,z,s);Console.Read(); 5 程序运行结果为_ 0 5_Using System;public class Exe2public static void Main()int a ,b;a=b=1;b+=a/b+;Console.Write(“a=0,b=1”,a,b);b+=-a + +b;Console.WriteLine(“a=0,b=1”,a,b);Console.R

10、ead();6. 程序运行结果 Hb IS 26. Lb is 52 using System;public class Exe3Public static void Main () Int Hb,Lb,x;X=0x1af034;Hb=(x16)&0xFFFF;Lb=x&0x00ff;Console.Write(“Hb is 0t”,Hb);Console.WriteLine(“Lb is 0”,Lb);Console.Read();7.程序的运行结果为_using System;public class Exe4public static void Main()int a,b,c;a=2;b

11、=7;c=5;switch(a0)case true;switch(b=0&maj)aj+1=aj; j-; aj+1=m;for(i=0;i10;i+) Console.WriteLine(0,ai);Console.WriteLine();第 3 章 面向对象编程基础1.C#语言的核心是面向对象编程(OOP),OPP 语言都至少具有三个特性:封装、继承和多态。(A)2.C#的构造函数分为实例构造函数和静态构造函数,实例构造函数可以对静态成员或非静态成员(C)进行初始化,静态构造函数只能对 静态成员( A)进行初始化。3.C#实现了完全意义上的面向对象,所以他没有全局变量、全局常数、全局方法

12、(D),任何数据域和方法都必须封装在类体中。4.方法中的值参数是按值传递(A)的参数。5.关于方法中 REF 和 OUT 参数说明错误的是:REF 和 OUT 因为传递的是实参的地址,所以要求实参和形参的数据类型必须一致(C)正确:REF 和 OUT 参数传递方法一样,都是把实参的内存地址传递给方法,实参与形参只想同一个内存存储区域,但 REF 要求实参必须在调用之前明确赋值REF 是将实参传入形参,OUT 只能从方法中传出值,而不能从方法调用处接受实参数据REF 和 OUT 参数要求实参和形参的书籍类型或者一致,或者实参能被隐式地转化为形参类型6.加上 classMclass 累的一个方法签

13、名是 public void Max(out int max,params inta),m1 是 Mclass 类得一个对象, maxval 是一个 int 型的值类型变量, arrayA 是一个 int 型的数组对象,调用错误的是 m1.Max(out maxval,ref arrayA) (C)正确:m1.Max(out maxval);m1.Max (out maxval,4,5,3) ;m1.Max (out maxval,3,3.5)二、填空题1.构析函数不能有程序显式的调用,而是由系统在释放对象时自动调用。如果这个对象是一个派生类对象,那么在调用析构函数时,出了执行派生类得构析函数

14、,也会执行基类的析构函数,其执行顺序域构造函数正好相反2. C#实现了完全意义上的面向对象,所以他没有全局变量、全局常数、全局方法,任何数据域和方法都必须封装在类体中。3.在类中如果一个数据成员被声明为 static 的,则说明这个类的所有实例都共享这个 static 数据库成员,在类体外,static 成员不能通过实例方法(继承)来访问,它必须通过静态方法(构造函数)访问4.下面程序运行的结果为:using System;public class Testpublic void change1(string s) s = s + change1; public void change2(re

15、f string s)s = s + change2;public void change3(string s1 ,out string s2)s1 = s1 + change3; s2 = s1; public class Exe8public static void Main()string s1, s2;s1 = Hello,;Test t1 = new Test();t1.change1(s1);Console.WriteLine(s1 after call to change1 is 0, s1);t1.change2(ref s1);Console.WriteLine(s1 after call to change2 is 0, s1);t1.change3(s1, out s2);Console.WriteLine(s

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

最新文档


当前位置:首页 > 中学教育 > 试题/考题

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