C#练习题内部考试题.doc_第1页
C#练习题内部考试题.doc_第2页
C#练习题内部考试题.doc_第3页
C#练习题内部考试题.doc_第4页
C#练习题内部考试题.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、单项选择题(本大题共15小题,每小题1分,共15分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。(这题真不简单)1、在C#中,表示一个字符串的变量应使用以下哪条语句定义( ) ACString str; Bstring str; CDim str as string; Dchar * str;2、请问经过表达式 a=3+15?0:1 的运算,变量a的最终值是( ) A3 B1 C0 D43、关于如下程序结构的描述中,哪一项是正确的( ) for( ; ; )循环体; A. 一直执行循环体,即死循环 B. 执行循环体一次 C. 不执行循环体 D. 程序不符合语法要求4、C#程序设计语言属于什么类型的编程语言( C )A汇编语言 B机器语言 C高级语言 D自然语言5、在类的定义中,类的( )描述了该类的对象的行为特征 A类名 B方法 C所属的名字空间 D私有域6、C#中MyClass为一自定义类,其中有以下方法定义public void Hello()使用以下语句创建了该类的对象,并使变量obj引用该对象MyClass obj = new MyClass();那么如何访问类MyClass的Hello方法( ) A. obj.Hello(); B. obj:Hello(); C. MyClass.Hello(); D. MyClass:Hello();7、以下哪段代码,最合理地实现了以下结构图描述的流程( )A if(x=0) Bif(x=0)y=-x; y=x; else elsey=x; y=-x;Cwhile(x=0) Dwhile(x=0) case true: y=x; case true: y=-x;break; break; case false: y=-x; case false: y=x;break; break; 8、分析下列程序:public class Demo private string _sData = “; public string sDataset_sData = value;在Main函数中,创建该类的对象obj后,下列哪些语句是合法的( ) Aobj.sData = “It is funny!”;BConsole.WriteLine(obj.sData) ;Cobj.sData = 100;Dobj.set(obj.sData);9、分析下列程序中类MyClass的定义class BaseClass public int i;class MyClass:BaseClass public new int i;则下列语句在Console上的输出为( )MyClass y = new MyClass();BaseClass x = y;x.i = 100;Console.WriteLine(“0, 1”,x.i,y.i);(提示:注意类MyClass 中的new关键字) A. 0,0 B. 100,100 C. 0,100 D. 100,010、在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明成( ) A. sealed方法 B. public 方法 C. virtual 方法 D. override 方法11、在C#中,下列哪些语句可以创建一个具有3个初始值为”的元素的字符串数组( )A. string StrList3( ”);B. string3 StrList= ”, ”, ”;C. string StrList = ”, ”, ”;D. string StrList = new string 3;12、下列语句创建了多少个string对象?( ) string , strArray = new string3,4;A. 0 B.3 C.4 D.1213、接口Animal定义如下:public interface Animal void Move();则下列抽象类的定义中,哪些是不合法的( )A. abstract class Cat: Animal public abstract void Move();B. abstract class Cat: Animal public virtual void Move()Console.Write(Console.Write(“Move!”);)C. abstract class Cat: Animal public void Move()Console.Write(Console.Write(“Move!”);)D. abstract class Cat: Animal public void Eat()Console.Write(Console.Write(“Eat!”);)14、下列函数定义中,哪条语句是非法的( )void Test() int I = 100; /第一句 object s = I; /第二句 int k = s; /第三句 k = (int)s; /第四句A. 第一句 B. 第二句 C. 第三句 D. 第四句15、在C#中设计类时,如何将一个可读可写的公有属性Name修改为只读属性( )A. 将Name的set语句块删除B. 将Name的set语句块置空C. 将Name的set语句块前加修饰符privateD. 将Name添加readonly修饰符二、多项选择题(本大题共10小题,每小题2分,共20分) 在每小题列出的四个备选项中有一个或者多个答案是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1、下列哪些语句中定义的变量属于引用类型变量( )A. IInformation info; /IInformation 为一接口类型名B. MyStruct x; /MyStruct 为一结构类型名C. int arr;D. MyEnum y; /MyEnum 为已定义的枚举型名2、在C#程序中,入口函数的正确声明为( )A. static int Main()B. static void Main()C. static void main()D. static Main()3、从下列选项中,选出变量result的返回值是false的表达式( )A. bool result = (4=5); B. bool result = (1!=1);C. bool result = (1=1); D. bool result = 0;4、设置int a=3,从以下选项中,选出变量result的值为true的表达式( )Abool result = (a+=3); Bbool result = (+a3); Cbool result = (a=-4); Dbool result = !(a+3);5、通常计算机程序是由若干条语句组成的,组成程序的常用结构分别是下列哪几种( )A顺序结构 B分支结构 C循环结构D跳转结构6、switch( ) 语句中的控制表达式可以是下面哪几种类型( )C9、下列关于派生类和抽象类的描述中,哪个选项是错误的( )A. 在C#中要在派生类中重新定义基类的虚函数必须在前面加overrideB. 抽象类必须包含一个或多个抽象成员C. 在C#中派生类可使用base修饰符访问基类的成员D. 声明为abstract类的方法必须同时进行声明和实现10、在数组中,对于for和foreach语句,下列哪些选项中的说法正确的( )Aforeach语句能使你不用索引就可以遍历整个数组Bforeach 语句总是遍历整个数组Cforeach 语句总是从索引1遍历到索引LengthD如果需要修改数组元素就必须使用for语句三、名词解释(本大题共5小题,每小题3分,共15分)请用简短的语句对所给出的名词,进行简短的描述。1、在C#编程中流程控制语句包含哪几个结构,它们分别是什么?2、简单的描述一下类与对象的区别?3、举例说明一下什么是继承?4、在声明构造函数时,应注意哪些事项;并说明一下this在构造函数中的用法?5、简单的描述一下什么是多态?四、判断题(本大题共10小题,每小题1分,共10分) 请对每小题的描述进行判断,正确的括号中打” ”,错误的请在括号中打”。1、在C# 2005编程环境中,常量的值可以在代码中被修改。 ( )2、属性就是实体的抽象,比如,对象猫可以有重量,身长等属性。( )3、如果基类没有默认的构造函数,那么其派生类构造函数必须通过base关键字来调用基类的构造函数。( )4、C#中, 下列MyClass的定义是否正确合法? ( )public class Base1 public class Base2 public MyClass:Base1,Base2 5、下列类MyClass的Name属性定义是否正确 ( )public abstract class Base public abstract string Nameget;set;public class MyClass string _msg; public override string Name get return _msg; 6、以下代码执行后,string类型变量str的值仍然是“海天软件工程学院”。 ( ) string str = “海天软件工程学院”; private void Changed(string str0) str0 = “海天软件工程大学”;Changed(str);7、在C#2005编程环境中,int类型变量的位数是16位。 ( )8、类和对象的区别是:类是对象的实例,而对象则是类的抽象。 ( )9、抽象方法在抽象类中被定义和实现,当派生类从抽象类中继承一个抽象方法时,派生类必须重写该抽象方法。 ( )10、分析下面的代码段,最终的运行结果是Sun Mon Tue Wed Thu Fri Sat ( )static void Main(string args)string WeekDays = new string Sun, Mon, Tue, Wed, Thu, Fri, Sta ;PrintDay(WeekDays);static void PrintDay(string array)for (int i = 0; i array.Length-1; i+)Console.Write(arrayi + 0, i array.Length - 1 ? : );Console.WriteLine(); 五、编码题(本大题共4小题,每小题10分,共40分)请使用C#语言给出每道题要求的完整代码,或者在空白处补充完整剩余的代码。1、下列算法的功能是求出a、b、c互不相等的数的最大数。请完善该算法。static void Main(string args) int a = Convert.ToInt32(Console.ReadLine(); int b = Convert.ToInt32(Console.ReadLine(); int c = Convert.ToInt32(Console.ReadLine(); if (1)_) if (2)_) Console.WriteLine(三个数的最大数为0, (3)_); else Console.WriteLine(三个数的最大数为0, (4)_); else if (5)_) Console.WriteLine(三个数的最大数为0, (6)_); else Console.WriteLine(三个数的最大数为0, (7)_); Console.ReadLine();2、下列算法的功能是当控制台上输入一个字符串之后,检索字符串中的非零数字,并把这些数字相加。请完善该算法。(例如:当输入”a32Q5uhn4”,程序输出sResualt = 14)static void Main(string args) string inputString = null; int sResualt = 0; inputString = Console.ReadLine(); foreach (char chr in inputString) if(1)_) sResualt += Convert.ToInt32(chr.ToString(); if (2)_) Console.WriteLine(输入的字符串中没有数字!); else Console.WriteLine(sResualt=0, sResualt); Console.ReadLine();3、请补全在Student类中重载Person类中的HappyBirthday方法函数,若当天是某人生日,打印出结果为”今天是*年*月*日,祝你生日快乐!”。public abstract class Personprivate DateTime _birthday;public DateTime Birthday get return _birthday; set _birthday = value; public abstract void HappyBirthday();public class Student : Person /请将HappyBirthday方法函数补充完整4、下列算法的功能是输出10名学生的信息。请完善该算法。public class Student private string _name; private int _age; public int Age get return _age; set _age = value; public string Name get return _name; set _name = value; static void Main(string args) ArrayList StudentList = new ArrayList(); for (int i = 0; i 10; i+) Student obj

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论