您好,欢迎访问三七文档
C#练习题一、判断题(√√××√√√×××)1.按下按钮会引发事件。()2.C#源代码的后缀名为.cs。()3.析构函数可以返回值。()4.SQL的INSERT语句不可以对数据库进行更新。()5.对象的this引用是对该对象本身的引用。()6.在属性声明中,get和set访问器都必须在属性体的内部声明。()7.不能指定接口中方法的修饰符。()8.构造函数不允许重载。()9.类的static成员可以通过该类的对象来引用。()10.派生类可以从多个类继承。()二、单项选择题11.在类作用域中能够直接使用该类的()成员进行访问。A.私有B.公用C.保护D.任何答案:D12.小数类型(decimal)和浮点类型都可以表示小数,正确说法:()A.两者没有任何区别B.小数类型比浮点类型取值范围大C.小数类型比浮点类型精度高D.小数类型比浮点类型精度低答案:C13.可用作C#程序用户标识符的一组标识符是()。A.voiddefine+WORDB.a3_b3_123YNC.for-abcCaseD.2aDOsizeof答案:B14.引用类型主要有4种:类类型、数组类型、接口类型和()。A.对象类型B.字符串类型C.委托类型D.整数类型答案:C15.加载窗体时触发的事件是()。A.ClickB.LoadC.GotFoucsD.DoubleClick答案:B16.类的以下特性中,可以用于方便地重用已有的代码和数据的是().A.多态B.封装C.继承D.抽象答案:C17.字符串连接运算符包括&和()。A.+B.-C.*D./答案A18.在C#中无需编写任何代码就能将int型数值转换为double型数值,称为(b)。a)显式转换b)隐式转换c)数据类型转换d)变换19.下面(b)代码可以显示一个消息框。a)Dialog.Show();b)MessageBox.Show();c)Form.Show();d)Form.ShowDialog();20.分析一下C#片段中的属性,该属性是(C)属性。privatestringname;PublicstringName{get{returnname;}}A:可读可写B:只写C:只读D:静态21.假定一个10行20列的二维整型数组,下列哪个定义语句是正确的()。A.int[]arr=newint[10,20]B.int[]arr=intnew[10,20]C.int[,]arr=newint[10,20]D.int[,]arr=newint[20;10]答案:C22.以下说法正确的是()。A.接口可以实例化B.类只能实现一个接口C.接口的成员都必须是未实现的D.接口的成员前面可以加访问修饰符答案:C23.下列关于重载的说法,错误的是()。A.方法可以通过指定不同的参数个数重载B.方法可以通过指定不同的参数类型重载C.方法可以通过指定不同的参数传递方式重载D.方法可以通过指定不同的返回值类型重载答案:D24.关于虚方法实现多态,下列说法错误的是()。A.定义虚方法使用关键字virtualB.关键字virtual可以与override一起使用C.虚方法是实现多态的一种应用形式D.派生类是实现多态的一种应用形式答案:B25.在.NET框架类库中,所有与多线程机制应用相关的类都放在(C)命名空间中。A.System.SysThreadB.System.ThreadC.System.ThreadingD.NetException26.一般情况下,异常类存放在什么命名空间中?(b)。a)生成异常类所在的命名空间b)System.Exception命名空间c)System.Diagnostics命名空间d)System命名空间27.使用Dirctory类的下列方法,可以获取指定文件夹中的文件的是().A.Exists()B.GetFiles()C.GetDirectories()D.CreateDirectory()答案:B28.StreamWriter对象的下列方法,可以向文本文件写入一行带回车和换行的文本的是()。A.WriteLine()B.Write()C.WritetoEnd()D.Read()答案:A29.SQL语句“selectcount(*)fromemployee”,需要SqlCommand对象的哪一个方法在执行?(A)ExecuteNonQuery()(B)ExecuteScalar()(C)ExecuteReader()(D)ExecuteXmlReader()30.让控件不可用的属性是以下哪一个(A)AllowDrop(B)Enabled(C)Bounds(D)Visible三、填空题31.C#的类不支持多重继承,但可以用()来实现。答案:接口32.一般将类的构造方法声明为()访问权限。如果声明为private,就不能创建该类的对象。答案:public或公有33.在C#中类的实例化需要使用的关键字是(new)。34.填充数据集应调用数据适配器的(Fill)方法。35.C#中的三元运算符是_?_:____。四、读程题36.程序的运行结果是基类派生类classProgram{staticvoidMain(string[]args){Tigert=newTiger();Console.Read();}}classAnimal{publicAnimal(){Console.Write(基类);}}classTiger:Animal{publicTiger(){Console.Write(派生类);}}37.在Main方法中需要调用Display方法,按照要求填空classProgram{staticvoidMain(string[]args){A1a=newA1();//创建A1类的对象aConsole.WriteLine(a.Display());Console.ReadLine();}}classA1{publicstringDisplay(){returnhelloeveryone!;}}38.分析一下C#代码,根据面向对象的多态性,代码的运行结果是__B___________classA{publicvirtualvoidF(){Console.Write(“A”);}publicvoidF(stringchr){Console.Write(“B”);}}classB:A{publicvoidF(){Console.Write(“B”);}staticoverridevoidMain(){AobjB=newB();objB.F();}39.classTest{staticvoidMain(){try{inta=10;intb=0;intc=a/b;Console.WriteLine(c);}catch{Console.WriteLine(“出现错误”);}finally{Console.WriteLine(“运行结束”);}}}在C#中,上述代码的运行结果是出现错误运行结束五、简答题(10分,每题5分)40.如何区别重载方法?41.有哪些主要的数据类型?它们之间是怎样进行相互转换的?值类型包括整数类型、字符类型、浮点类型、布尔类型、结构类型和枚举类型。引用类型包括类、接口、委托、数组、字符串等。C#中提供了隐式类型转换和显式类型转换。42.类和对象的区别和关系是什么?类是对象的抽象,它为属于该类的全部对象提供了统一的抽象描述。它是对象的模板,对象是类的实例。43.构造函数有哪些特征?(1)函数名与类名相同;(2)没有返回值类型;(3)系统自动调用44.何谓数据绑定技术?所谓数据绑定技术就是把已经打开的数据集中某个或者字段绑定到组件的某些属性上的一种技术,就是把已经打开的数据的某个或者某些字段绑定到TextBox、ListBox、ComboBox等组件能够显示数据的属性上,当对组件完场数据绑定后,其显示字段的内容将随着数据记录指针的变化而变化。六、编程题45.编写一个完整的C#控制台应用程序。包含类Person,Student类及Test类,具体要求如下:(1)类Person:成员变量:name,string类型,表示姓名age,int类型,表示年龄属性:_Name;_Age;成员方法:构造方法;showInfo()方法:输出Person类的两个成员变量的值。(2)类Student:继承自Person类,并新增以下成员:成员变量:credit,double类型,表示学生的学分属性:_Credit;方法:构造方法;showInfo()方法:输出Student类的三个成员变量的值。例如:姓名:李林年龄:20学分:600(3)Test类完成测试功能①生成Student类的对象;②调用对象的showInfo()方法,输出对象的信息。46.编程计算如图所示圆面积的窗体,其中有两个标签控件label1和label2,两个文本框控件textBox1和textBox2,一个命令按钮控件button1。在textBox1用于输入圆半径,textBox2用于输出圆面积。计算功能由命令按钮实现。privatevoidbutton1_Click(objectsender,EventArgse){}参考答案:doubler=Convert.ToDouble(textBox1.Text);doublearea=Math.PI*r*r;textBox2.Text=area.ToString();
本文标题:C#练习题
链接地址:https://www.777doc.com/doc-2250885 .html