ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:307.40KB ,
资源ID:4431668      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4431668.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C#复习资料精品管理资料.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C#复习资料精品管理资料.docx

1、C#复习资料精品管理资料一、选择题1.CLR是一种()A程序设计语言 B。运行环境 C.开发环境 D. API编程接口2.C#语言源代码文件的后缀名为()A.c B .cc C。 。csp D. 。cs3.构建桌面应用程序需要。NET提供的类库是()AADO。NET B。Windows Form C。XML D。ASP.NET4.与C+等语言相比,C#的简单性主要体现在()A没有鼓励的全局函数 B.没有指针C.不能使用未初始化的变量 D。解决了“DLL地狱”5.C中导入某一命名空间的关键字是()Ausing B.use C.import D。include6.C#中程序的入口方法名是()AMa

2、in B.main C.Begin D。using二、简答题1.C语言的主要优势有哪些?2.如何看待C、CLR和。NET之间的关系?3.VS2010平台如何有效地实现各类应用程序的管理?4.最常见的C项目有哪几类?简述创建他们的基本操作步骤?第二章 C#语言基础一、选择题1.C中的值类型包括三种,它们是() A整型、浮点型、基本类型 B.数值类型、字符类型、字符串类型 C。简单类型、枚举类型、结构类型 D。数值类型、字符类型、枚举类型、2。C#的引用类型包括类、接口、数组、委托、object和string。其中object()根类 A。只是引用类型的 B.只是值类型的 C.只是string类型

3、的 D.是所有值类型和引用类型的3。浮点常量有三种格式,下面()组的浮点常量都属于double类型. A。 0。618034, 0。618034D, 6。18034E1 B.0。618034, 0。618034F, 0.0618034E1 C。0。618034, 0.618034f, 0。618034M D。0.618034F, 0。618034D, 0。618034M4.下面字符常量表示有错误的一组是() A。 , u0027 , x0027 B。 n , t , 037 C。a , u0061 , (char)97 D.x0030 , 0 , 05。下列标识符命名正确的是() A. _in

4、t,Int,int B。using,_using,using C。NO1,NO_1,NO。1 D。 A3,_A3,A36.当表达式中混合了几种不同的数据类型时,C会基于运算的顺序将他们自动转换成同一类型.但下面()类型和decimal类型混合在一个表达式中,不能自动提升为decimal。 A. float B。 int C。uint D。 byte7.设有说明语句 int x=8;则下列表达式中,值为2的是() A。X+=x-=x; B。x%=x2; C.x8?x=0:x+; D.x/x=x+x;8.C数组主要有三种形式,它们是() A。一维数组、二维数组、三维数组 B。整型数组、浮点型数组、

5、字符型数组 C.一维数组、多维数组、不规则数组 D.一维数组、二维数组、多维数组9.设有说明语句 double,tab=new double 2,3,4;那么下面叙述正确的是() A. tab是一个三维数组,它的元素一共有24个 B。 tab是一个有三个元素的一维数组,它的元素初始值分别是2,3,4 C. tab是一个维数不确定的数组,使用时可以任意调整 D。 tab是一个不规则数组,数组元素的个数可以变化10。C#的构造函数分为实例构造函数和静态构造函数,实例构造函数可以对()进行初始化,静态构造函数只能对()进行初始化。 A。静态成员 B.非静态成员 C。静态成员或非静态成员 D。 静态成

6、员和非静态成员11。C#实现了完全意义上的面向对象,所以它没有(),任何数据域和方法都必须封装在类体中。 A.全局变量 B。全局常数 C。全局方法 D。全局变量、全局常量和全局方法12.方法中的值参数是()的参数。 A。按值传递 B。按引用传递 C。按地址传递 D。不传递任何值13。下面对方法中的ref和out参数说明错误的是() A.ref和out参数传递方法相同,都是把实在参数的内存地址传递给方法,实参与形参指 向同一个内存存储区域,但ref要求实参必须在调用之前明确赋过值 B。ref是将实参传入形参,out只能用于从方法中传出值,而不能从方法调用处接收实参数据 C。ref和out参数传递

7、的是实参的地址,所以要求实参和形参的数据类型必须一致 Dref和out参数要求实参和形参的数据类型或者一致,或者实参能被隐式地转化为形参的类型14。下列叙述中,正确的是() A.接口中科院有虚方法 B.一个类科院实现多个接口 C。接口能被实例化 D.接口中科院包含已实现的方法二、简答题1。判断下列标识符的合法性。X。25 4foots exam1 using main Who_an_I LargeSmall _Years val(7) 2xy2.下列常量是否合法?弱不合法,指出原因;若合法,指出它的数据类型。32767 35u 1.25e3。4 3L 0.0086e32 87 true “a”

8、 a 9645 .5 5UL3.指出下列哪些表示字符?哪些表示字符串?哪些既不表示字符也不表示字符串? 0x66 China “中国 “8。42” 0x33 56.34 “ntox34” r 8.34 “0x33” 0 “Computer System!n” “docsharemy1。doc docsharemy1。doc” Joe said”Hello”to me “Joe said”Hello”to me”4.将下列代数式写成C#的表达式。(1)ax2+bx+c (2)(x+y)3 (3)(a+b)/(ab)5.计算下列表达式的值。(1)x+y4(int)(x+z)%3/2 其中,x=3。

9、5,y=13,z=2。5(2)(int)x(int)y+(float)(zw) 其中,x=2。5,y=3。5,z=3,w=46.写出下列表达式运算后a的值,设原来的a都是10。(1)a+=a; (2)a%=(7%2); (3) a=3+4;(4)a/=a+a; (5)a-=a; (6)a+=a=a*=a;三、填空题1.C中可以把任何类型的值赋给object类型变量,当值类型赋给object类型变量时,系统要进行( )操作;而将object类型变量赋给一个值类型变量,系统要进行( )操作,并且必须加上( )类型转换.2.C#特有的不规则数组是数组的数组,也就是说它的数组元素是( ),并且它的内部

10、每个数组的长度( ).3.数组在创建时可以根据需要进行初始化,需要注意的是,初始化时,不论数组的维数是多少,都必须显式地初始化数组的( )元素。四、程序分析1.程序运行结果:_ class Exe1 Static void Main(string args) 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(); 2.程序运行结果:_class Exe2 Static void Main(string args) int a,b; a=

11、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。Read();3.程序运行结果:_class Exe3 Static void Main(string args) int Hb,Lb,x; x=ox1af034; Hb=(x16)&0xFFFF; Lb=x0x00ff; Console.Write(“Hb is 0t,Hb); Console。WriteLine(“Lb is 0,Lb); Console。Read(); 4.程序运行结果:_clas

12、s Exe4Static void Main(string args) int a=2,b=7,c=5; switch(a0) case true: switch(b10) case true: Console.Write(“”);break; case false: Console.Write(“!);break; break; case false: switch(c=5) case false: Console。Write(“);break; case true: Console。Write(“);break; break; Console。WriteLine(); Console.Re

13、ad();5.程序运行结果:_class Exe5 Static void Main(string args) int x; x=new int10; int y=1,2,3,4,5,6,7,8,9,10; const int SIZE=10; int z; z=new intSIZE; for (int i=0; iz。Length;i+) zi=i*2+1; Console.Write(“0,4”,zi); Console。Read();6.下面程序的功能是:输出100以内能被3整除且个位数为6的所有整数,请填空。class Exe6Static void Main(string args

14、) int i,j; for(i=0;_;i+) j=i10+6; if(_) continue; Console。WriteLine(“0”,j); Console。Read();7.程序运行结果:_public class Test public void change1(string s) s=s+”Change1”; Public void change2(ref string s) s=s+”Change2”; public void change3(string s1,out string s2) s1=s1+”Change3”; s2=s1; class Exe7static v

15、oid Main(string args) 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(“s1 after call to change3 is 0,s1); Console.

16、WriteLine(“s2 after call to change3 is 0”,s2); Console。Read();五、编程题1.斐波那契数列中的前两个数是1和1,从第三个数开始,每个数等于前两个数的和,编程 计算此数列的前30个数,且每行输出5个数。2.从键盘上输入一个整数n的值,按下式求出y,并输出n和y的值(y用浮点数表示).y=1!+2!+3!+4!+n!3.设计一个程序,输出所有水仙花数,所有水仙花数是一个三位整数,其各位数字的立方和 等于该数本身,例如,153=13+53+33。4.设计一个程序,输入一个四位整数,将各位数字分开,并按其反序输出。例如:输入1234, 则输出

17、4321。要求必须用循环语句实现。5。求/2的金是指的公式为:/2=(2/1)*(2/3)(3/4)(4/5)(2n/2n1)*(2n/2n+1)* 其中,n=1,2,3,.设计一个程序,求出当n=1000是的近似值。6.设计一个程序,输入一个十进制数,输出相应的十六进制数。7.当x1时,Hermite多项式定义为: 1 n=0 Hn(x)= 2x n=1 2xHn-12(n1)Hn2(x) n1 当输入浮点数x和整数n后,求出Hermite多项式前n项的值.8。找出数组a中最大值的下标,输出下标及最大值。9。判断s所指的字符串是否是“回文”(即顺读和逆读是相同的字符).10.输入一组非0整数

18、(以0作为结束标志)到一位数组中,求出这一组数的平均值,并统 计出正数和负数的个数.11。设计一个程序,求一个4*4矩阵两对角线元素之和。12。输入一个字符串,串内有数字和非数字字符,例如,“abc2345 345fdf678 jdhfg945, 将其中连续的数字作为一个整数,依次存放到另一个整型数组b中。如将2345存放到b0。 345存放到b1,678放入b2,统计出字符串中的整数个数,并输出这些整数。第三章 C面向对象编程一、选择题1.C#语言的核心是面向对象编程(OOP),所有OOP语言都应至少具有三个特性:() A。封装、继承和多态 B.类、对象和方法 C。封装、继承和派生 D.封装

19、、继承和接口2.以下有关属性的叙述正确的是:()A.要求与字段域一一对应 B.只包含get访问器的属性是只写属性C.不能把它当变量使用 D.在静态属性访问器中可访问静态数据3.假设class Mclass类的一个方法的签名为:public void Max(out int max,params inta),m1是Mclass类的一个对象,maxval是一个int型的值类型变量,arrayA是一个int型的数组对象,则下列调用该方法有错的是()A. m1。Max(out maxval) B. m1.Max(out maxval,4,5,2)C。 m1.Max(out maxval,ref arr

20、ayA) D。 m1.Max(out maxval,3,3.5) 4.枚举类型是一组命名的常量集合,所有整型都可以作为枚举类型的基本类型,如果类型省 略,则约定为()A.uint B.sbyte C。int D。ulong二、简答题1.举一个现实世界中继承的例子,用类的层次图表示出来。2.什么是抽象类和密封类?它们有什么不同?3.分别在什么情况下使用隐式数值转换和显式数值转换?三、填空题1.析构函数不能由程序显式地调用,而是由系统在_时自动调用。如果这个对象是 一个派生类对象,那么在调用析构函数时,除了执行派生类的析构函数,也会执行基类的 析构函数,其执行顺序与构造函数_。2.C实现了完全意义

21、上的面向对象,所以它没有_,任何数据域、方法都必须封装在类中。3.在类中,如果一个数据成员被声明为static的,则说明这个类的所有实例都共享这个static 数据成员。在类体外,static成员不能通过_来访问,它必须通过_来访问。四、程序分析1.下面的程序,输入不同参数,如:5、hello、0、121212*2等,观察并分析运行结果.class Test static void Main(string args) while(true) String s=Console.ReadLine(); if(s=”exit”) break; try int i = 10/int32.Parse(s

22、); Console。WriteLine(“结果是”+i); catch(IndexOutOfRangeException e) Console。WriteLine(e。Message); catch(FormatException e) Console.WriteLine(e。Message); catch(DivideByZeroException e) Console.WriteLine(e.Message); catch(OverflowException e) Console。WriteLine(e。Message); Console。Read(); 2.指出下面代码中错误的地方,并

23、进行修改。using System;namespace PavelTsekov interface I1 void MyFunction1(); interface I2 void MyFunction2(); class Test:I1,I2 public void I1。MyFunction() Console.WreitLine(Now I can say this here is I1 implemented!); public void I2。MyFunction() Console。WreitLine(”Now I can say this here is I2 implement

24、ed!”); class AppClass static void Main(string args) Test t=new Test(); t。MyFunction1(); t。MyFunction2(); Console.Read(); 3.分析下面的代码,指出Digit和byte直接的转换方式,并说明原因。using System;namespace Digit public class Digit byte value; public Digit(byte value) if(value0|value9) throw new ArgumentException(); this.valu

25、e=value; public static implicit operator byte(Digit d) return d.value; class Program static void Main(string args) Digit dig=new Dight(7); byte num=dig; Console。WriteLine(”num=0”,num); Console.ReadLine(); 五、编程题1。定义描述复数的类,并实现复数的输入和输出。设计三个方法分别完成复数的加、减和乘法运算。2.定义全班学生成绩类,包括姓名、学号、C+成绩、英语成绩、数学成绩和平均成绩。设计下列4

26、个方法。 (1)全班成绩的输入。 (2)求出每一个同学的平均成绩。 (3)按平均成绩的升序排序。 (4)输出全班成绩。3.定义一个描述学生基本情况的类,数据成员包括姓名、学号以及C+和数学成绩,成员函数包括输出数据、设置姓名和学号、设置三门课的成绩,求出总成绩和平均成绩.4。设有一个描述坐标点的CPoint类,其私有变量x和y代表一个点的x、y坐标值.编写程序实现以下功能:利用构造函数传递参数,并设其默认参数值为60和75,利用成员函数display()输出这一默认值;利用公有成员函数setpoint()将坐标值修改为(80。150),并利用成员函数输出修改后的坐标值。5.定义一个人员类CPe

27、rson,包括数据成员:姓名、编号、性别和用于输入/输出的成员函数。在此基础上派生出学生类CStudent(增加成绩)和教师类(增加教龄),并实现对学生和教师信息的输入/输出.6。把定义平面直角坐标系上的一个点的类CPoint作为基类,派生出描述一条直线的类CLine,在派生出一个矩形类CRect。要求成员函数能求出两点间的距离、矩形的周长和面积等。设计一个测试程序,并构造完整的程序。简答题3。属性是类的数据成员吗?属性的作用是什么?get和set关键字的作用是什么/4.什么是方法?C#允许在类的外部声明方法吗?5。简述值类型与引用类型的区别。6.在方法调用中,参数按值传递与按引用传递的区别是

28、什么?基本数据类型作为参数默认按什么方式传递,类对象作为参数默认按什么方式传递?类对象可以按值方式传递吗?基本数据类型参数按引用传递时,应该怎么做?关键字ref和out的区别是什么?7。什么叫方法的重载?两个方法是重载关系时,应满足什么条件?8。简述构造函数的作用?实验步骤1.设计一个简单的Windows应用程序,在文本框中输入两个点的坐标值,单击”确定”时显示两点之间的距离,如国所示。 要求定义一个Point类,包括:(1)两个私有字段表示两坐标值(2)一个构造函数通过传入的参数对坐标值初始化(3)两个只读属性对坐标值的读取一个方法包含一个Point类对象作为形参该对象和自己的距离 2.自定义一个时间类。该类包含小时,分,秒字段与属性,具有将秒增加1秒的方法,如图所示。要求定义一个Time类,包括:(1)三个私有字段表示时,分,秒(2)两个构造函数,一个通过传入的对时间初始化,另一个获取系统当前的时间(3)三个只读入属性实现对时,分,秒的读取(4)一个于对秒增加1秒(注意60进位的问题).图133.设计一个Windows应用程序,在该程序中定义一个学生类和班级类,以处理每个学生的学号、姓名,语文、数学和英语三门课程的期末考试成绩,要求: (1

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1