收藏 分销(赏)

面向对象程序设计技术.doc

上传人:仙人****88 文档编号:9356474 上传时间:2025-03-23 格式:DOC 页数:7 大小:69.50KB
下载 相关 举报
面向对象程序设计技术.doc_第1页
第1页 / 共7页
面向对象程序设计技术.doc_第2页
第2页 / 共7页
点击查看更多>>
资源描述
面向对象程序设计技术 1.小数类型(decimal)和浮点类型都可以表示小数,正确说法:( ) A. 两者没有任何区别 B. 小数类型比浮点类型取值范围大 C.小数类型比浮点类型精度高 D. 小数类型比浮点类型精度低 2. 可用作C#程序用户标识符的一组标识符是( )。 A. void define +WORD B. a3_b3 _123 YN C. for -abc Case D. 2a DO sizeof 3.加载窗体时触发的事件是( )。 A. Click B.Load C.GotFoucs D.DoubleClick 4.在C#中定义接口时,使用的关键字是( )。 A.interface B.: C.class D.overrides 5.在C#中,定义派生类时,指定其基类应使用的语句是( )。 A.Inherits B.: C.Class D.Overrides 6.在VC#.Net中,可以标识不同的对象的属性是( )。 A.Text B.Name C.Title D.Index 7.属于C#语言的关键字( )。 A. abstract B. camel C. Salary D. Employ 8. 假定一个10行20列的二维整型数组,下列哪个定义语句是正确的( )。 A. int[]arr = new int[10,20] B. int[]arr = int new[10,20] C. int[,]arr = new int[10,20] D. int[,]arr = new int[20;10] 9. 下列关于重载的说法,错误的是( )。 A. 方法可以通过指定不同的参数个数重载 B. 方法可以通过指定不同的参数类型重载 C. 方法可以通过指定不同的参数传递方式重载 D. 方法可以通过指定不同的返回值类型重载 10. 继承具有( ),即当基类本身也是某一类的派生类时,派生类会自动继承间接基类的成员。 A. 规律性 B. 传递性 C. 重复性 D. 多样性 1 C 2 B 3 B 4 A 5 D 6 B 7 A 8 C 9 D 10 B 填空 1.枚举是从System. 类继承而来的类型。 2.C#提供一个默认的无参构造函数,当我实现了另外一个有一个参数的构造函数时,还想保留这个无参数的构造函数。这样我应该写 构造函数。 3. 在switch语句中,每个语句标号所含关键字case后面的表达式必须是 。 4.传入某个属性的SET方法的隐含参数的名称是 。 5.C#数组类型是一种引用类型,所有的数组都是从System命名空间的 类继承而来的引用对象。 1 Enum 2 两个 3 常量表达式 4 value 5 object 1.DotNet包含两个部分,即公共语言运行时和框架类库 2.在数据类型转化时,只能通过类型转换关键字或Convert类实现。 3.定义枚举时至少为其中的一个枚举成员赋值。 4.委托是将方法作为参数传递给另一方法的一种数据类型。事件与委托没有关系。 5.在C#类中,this代表了当前类本身。 1 √ 2 X 3 X 4 X 5 X 1. 写出下列函数的功能。 static int SA(int a,int b) { if (a>b) return 1; else if (a==b) return 0; else return -1; } 2.写出以下程序运行结果。 using System; class Test { static int[] a = { 1, 2, 3, 4, 5, 6, 7, 8 }; public static void Main() { int s0, s1, s2; s0 = s1 = s2 = 0; for (int i = 0; i < 8; i++) { switch (a[i] % 3) { case 0: s0 += Test.a[i]; break; case 1: s1 += Test.a[i]; break; case 2: s2 += Test.a[i]; break; } } Console.WriteLine(s0 + " " + s1 + " " + s2); } } 3.写出以下程序运行结果。 using System; class Test { const int N=5; public static void Main (){ int a = 0; for(int i=1; i<N; i++) { int c=0, b=2; a+=3; c=a+b; Console.write (c + “ “ ); } } 1 比较两个整数a和b的大小,若a>b则返回1,若a= =b则返回0,若a<b则返回-1。 2 9 12 15 3 5 8 11 14 1.C#用多种修饰符来表达类的不同性质。根据其保护级C#的类有五种不同的限制修饰符,请写出并指出它们之间的区别是什么? 答:public 可以被任意存取 protected只可以被本类和其继承子类存取 internal只可以被本组合体(Assembly)内所有的类存取,组合体是C#语言中类被组合后的逻辑单位和物理单位,其编译后的文件扩展名往往是“.DLL”或“.EXE”。 protected internal唯一的一种组合限制修饰符,它只可以被本组合体内所有的类和这些类的继承子类所存取。 private只可以被本类所存取。 1.在类作用域中能够通过直接使用该类的( )成员名进行访问。 A. 私有 B. 公用 C. 保护 D. 任何 2.能作为C#程序的基本单位是( )。 A. 字符 B. 语句 C. 函数 D. 源程序文件 3.引用类型主要有4种:类类型、数组类型、接口类型和( )。 A.对象类型 B.字符串类型 C.委托类型 D.整数类型 4.改变窗体的标题,需修改的窗体属性是( )。 A. Text B. Name C.Title D. Index 5.在类的成员中,用于存储属性值的是( )。 A. 属性 B. 方法 C. 事件 D.成员变量 6.类的以下特性中,可以用于方便地重用已有的代码和数据的是( ). A.多态 B.封装 C.继承 D.抽象 7.将变量从字符串类型转换为数值类型可以使用的类型转换方法是( )。 A.Str() B.Cchar C.CStr() D.int.Parse(); 8.字符串连接运算符包括&和( )。 A. + B. - C. * D. / 9. C#是一种面向( )的语言。 A. 机器 B.过程 C.对象 D.事物 10. 以下正确的描述是( )。 A. 函数的定义可以嵌套,函数的调用不可以嵌套 B. 函数的定义不可以嵌套,函数的调用可以嵌套 C. 函数的定义和函数的调用均可以嵌套 D. 函数的定义和函数的调用均不可以嵌套 1 D 2 B 3 C 4 A 5 D 6 C 7 D 8 A 9 C 10 B 1. 当在程序中执行到 语句时,将结束所在循环语句中循环体的一次执行。 2.类中声明的属性往往具有get()和 两个访问器。 3.接口(interface)是指: 。 4. 在while循环语句中,一定要有修改循环条件的语句,否则,可能造成 。 5.C#的类不支持多重继承,但可以用 来实现。 1 continue 2 set() 3 只含有公有抽象方法(public abstract method)的类。这些方法必须在子类中被实现 4 死循环 5 接口 判断题 1.不能指定接口中方法的修饰符。 2.在同一行上可以书写多条语句,每条语句间用分号分隔。 3.在定义数组时不允许为数组中的元素赋值。 4.接口与类同样是面向对象程序设计的核心,是创建对象的模版。 5.如果要实现重写,在基类的方法中必须使用virtual关键字,在派生类的方法中必须使用overrides关键字。 1 √ 2 √ 3 X 4 √ 5 X 1.写出以下程序的运行结果。 using System; class Test { public static void Main() { int x = 5; int y = x++; Console.WriteLine(y); y=++x; Console.WriteLine(y); } } 2.写出下列函数的功能。 static float FH() { float y=0,n=0; int x = Convert.ToInt32(Console.ReadLine()); //从键盘读入整型数据赋给x while (x!=-1) { n++; y+=x; x = Convert.ToInt32(Console.ReadLine()); } if (n==0) return y; else return y/n; } 3.写出以下程序的功能。 static void f2(ref double[] a, int n) { int i; double sum=0; for(i=0;i<n;i++) sum+=a[i]; sum/=n; for(i=0;i<n;i++) if(a[i]>=sum) Console.write( a[i] + “ “ ); Console.writeLine (); }  1 5 7 2 求出从键盘上输入的一批常数的平均值,以-1作为结束输入的标志。 3 显示输出数组a中大于等于平均值的所有元素值。 1.接口和抽象类的区别是什么? 答:接口用于规范,抽象类用于共性。接口中只能声明方法,属性,事件,索引器。而抽象类中可以有方法的实现,也可以定义非静态的类变量。抽象类是类,所以只能被单继承,但是接口却可以一次实现多个。抽象类可以提供某些方法的部分实现,接口不可以.抽象类的实例是它的子类给出的。接口的实例是实现接口的类给出的。在抽象类中加入一个方法,那么它的子类就同时有了这个方法。而在接口中加入新的方法,那么实现它的类就要重新编写(这就是为什么说接口是一个类的规范了)。接口成员被定义为公共的,但抽象类的成员也可以是私有的、受保护的、内部的或受保护的内部成员(其中受保护的内部成员只能在应用程序的代码或派生类中访问)。此外接口不能包含字段、构造函数、析构函数、静态成员或常量。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服