C#经典习题(答案)_第1页
C#经典习题(答案)_第2页
C#经典习题(答案)_第3页
C#经典习题(答案)_第4页
C#经典习题(答案)_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、1在类作用域中能够通过直接使用该类的()成员名进行访问。A.私有答案:D2.小数类型和浮点类型都可以表示小数,正确说法:(A.两者没有任何区别B.小数类型比浮点类型取值范围大C.小数类型比浮点类型精度高D.小数类型比浮点类型精度低答案:C3能作为C#程序的基本单位是(A.字符答案:B4.可用作C#程序用户标识符的一组标识符是(A.voidC.for答案:B5.引用类型主要有4种:类类型、数组类型、接口类型和(答案:C6.使用Dirctory类的下列方法,可以获取指定文件夹中的文件的是().A.Exists()B.GetFiles()C.GetDirectories()答案:B7.加载窗体时触发

2、的事件是(A.Click答案:B答案:A9.在接口的成员中,不能包含().A.属性答案:D10.在C#中定义接口时,使用的关键字是(A.interfaceB.:答案:A得分评卷1当在程序中执行到答案:continue语句时,将结束所在循环语句中循环体的一次执行。2元素类型为double的2行5列的二维数组共占用答案:80字节的存储空间。3C#数组类型是一种引用类型,所有的数组都是从System命名空间的引用对象。答案:object4枚举是从System.答案:Enum类继承而来的5一般将类的构造方法声明为private,就不能创建该类的对象。答案:public或公有6.类中声明的属性往往具有g

3、et()和两个函数。答案:set()7.对于方法,参数传递分为值传递和答案:引用传递8.传入某个属性的SET方法的隐含参数的名称是。答:value9.C#提供一个默认的无参构造函数,当我实现了另外一个有一个参数的构造函数时,还想保留这个无参数的构造函数。这样我应该写构造函数。答:两个10.接口(interface)是指:。答:只含有公有抽象方法(publicabstractmethod)的类。这些方法必须在子类中被实现。得分评卷人三、判断题(每题2分,20分)1.不能指定接口中方法的修饰符。答:对2.DotNet包含两个部分,即公共语言运行时和框架类库答案:对3.在同一行上可以书写多条语句,每

4、条语句间用分号分隔。答案:对4.在数据类型转化时,只能通过类型转换关键字或Convert类实现。答案:错5.在定义数组时不允许为数组中的元素赋值。答案:错6.定义枚举时至少为其中的一个枚举成员赋值。答案:错7.结构只能静态访问。答案:错8.接口与类相同是面向对象程序设计的核心,是创建对象的模版。答案:对9.委托是将方法作为参数传递给另一方法的一种数据类型。事件与委托没有关系。答案:错10.如果要实现重写,在基类的方法中必须使用virtual关键字,在派生类的方法中必须使用overrides关键字。答案:错得分评卷人三、程序阅读题(每小题5分,共30分)1写出以下程序的运行结果。usingSys

5、tem;classTestpublicstaticvoidMain()intx=5;inty=x+;Console.WriteLine(y);y=+x;Console.WriteLine(y);答案:572.写出下列函数的功能。staticintSA(inta,intb)if(a>b)return1;elseif(a=b)return0;elsereturn-1;答案:比较两个整数a和b的大小,若a>b则返回1,若a=b则返回0,若a<b则返回-1。3写出下列函数的功能。staticfloatFH()floaty=0,n=0;intx=Convert.ToInt32(Cons

6、ole.ReadLine();/从键盘读入整型数据赋给xwhile(x!=-1)n+;y+=x;x=Convert.ToInt32(Console.ReadLine();if(n=0)returny;elsereturny/n;答案:求出从键盘上输入的一批常数的平均值,以-1作为结束输入的标志。4写出以下程序的功能。staticvoidWA(refinta,intn)for(inti=0;i<n-1;i+)intk=i;for(intj=i+1;j<n;j+)if(aj<ak)k=j;intx=ai;ai=ak;ak=x;答案:采用选择排序的方法对数组a中的n个整数按照从小到

7、大的次序重新排列。5写出以下程序运行结果。usingSystem;classTeststaticinta=1,2,3,4,5,6,7,8;publicstaticvoidMain()ints0,s1,s2;s0=s1=s2=0;for(inti=0;i<8;i+)switch(ai%3)case0:s0+=Test.ai;break;case1:s1+=Test.ai;break;case2:s2+=Test.ai;break;Console.WriteLine(s0+""+s1+""+s2);答案:912156写出以下程序的功能。staticvo

8、idf2(refdoublea,intn)inti;doublesum=0;for(i=0;i<n;i+)sum+=ai;sum/=n;for(i=0;i<n;i+)if(ai>=sum)Console.write(ai+“);Console.writeLine();答案:显示输出数组a中大于等于平均值的所有元素值。得分评卷人五、简答题(10分,每题5分)1.如何区别重载方法?不同的参数类型,不同的参数个数,不同的参数顺序2.C#用多种修饰符来表达类的不同性质。根据其保护级C#的类有五种不同的限制修饰符,请写出并指出它们之间的区别是什么?答:public可以被任意存取prot

9、ected只可以被本类和其继承子类存取internal只可以被本组合体(Assembly)内所有的类存取,组合体是C#语言中类被组合后的逻辑单位和物理单位,其编译后的文件扩展名往往是“.DLL”或“.EXE”。protectedinternal唯一的一种组合限制修饰符,它只可以被本组合体内所有的类和这些类的继承子类所存取。private只可以被本类所存取。1.假定一个10行20列的二维整型数组,下列哪个定义语句是正确的(A.intarr=newint10,20B.intarr=intnew10,20C.int,arr=newint10,20D.int,arr=newint20;10答案:C2在

10、类作用域中能够通过直接使用该类的()成员名进行访问。A.私有答案:DA.函数的定义可以嵌套,函数的调用不可以嵌套B.函数的定义不可以嵌套,函数的调用可以嵌套C.函数的定义和函数的调用均可以嵌套D.函数的定义和函数的调用均不可以嵌套答案:B4.小数类型和浮点类型都可以表示小数,正确说法:()A.两者没有任何区别B.小数类型比浮点类型取值范围大C.小数类型比浮点类型精度高D.小数类型比浮点类型精度低答案:C5.引用类型主要有4种:类类型、数组类型、接口类型和(6.在C#.Net中,用来创建主菜单的对象是()。7.下面所列举的应用程序中,不是多文档应用程序的是(答案:D8.在VC#.Net中,可以标

11、识不同的对象的属性是()。答案:B9.加载窗体时触发的事件是()。10.改变窗体的标题,需修改的窗体属性是()。)。)答案:A得分评卷人二、填空题(每空2分,共20分)1.C#数组类型是一种引用类型,所有的数组都是从System命名空间的引用对象。答案:object3一般将类的构造方法声明为private,就不能创建该类的对象。答案:public或公有4.类中声明的属性往往具有get()和两个函数。答案:set()5.对于方法,参数传递分为值传递和答案:引用传递6.传入某个属性的SET方法的隐含参数的名称是。答:value7.C#的类不支持多重继承,但可以用来实现。答案:接口8.C#提供一个默

12、认的无参构造函数,当我实现了另外一个有一个参数的构造函数时,还想保留这个无参数的构造函数。这样我应该写答:两个9.在方法定义中,virtual含义:答案:被virtual修饰的方法可以被子类覆写10、接口(interface)是指:。答:只含有公有抽象方法(publicabstractmethod)的类。这些方法必须在子类中被实现。得分评卷人三、判断题(每题2分,20分)1.在数据类型转化时,只能通过类型转换关键字或Convert类实现。答案:错2.在定义数组时不允许为数组中的元素赋值。答案:错3.定义枚举时至少为其中的一个枚举成员赋值。答案:错4.结构只能静态访问。答案:错5.接口与类相同是

13、面向对象程序设计的核心,是创建对象的模版。答案:对6.委托是将方法作为参数传递给另一方法的一种数据类型。事件与委托没有关系。答案:错7.如果要实现重写,在基类的方法中必须使用virtual关键字,在派生类的方法中必须使用overrides关键字。答案:错8.用Interval属性设置Timer控件Tick事件发生的时间间隔单位为秒。答案:错9.设置图片框控件的SizeMode属性为StretchImage时,图片可以按图片框的大小比例缩放显示。答案:对10.一个窗体中可以有多个弹出式菜单。答案:对得分评卷人三、程序阅读题(每小题5分,共30分)1.写出以下程序运行结果。usingSystem;

14、classTeststaticvoidLE(refinta,refintb)intx=a;a=b;b=x;Console.writeLine(a+“+b);publicstaticvoidMain()intx=10,y=25;LE(refx,refy);Console.writeLine(a+“+b);答案:252510102.写出下列函数的功能。staticintSA(inta,intb)if(a>b)return1;elseif(a=b)return0;elsereturn-1;答案:比较两个整数a和b的大小,若a>b则返回1,若a=b则返回0,若a<b则返回-1。3写出

15、下列函数的功能。staticfloatFH()floaty=0,n=0;intx=Convert.ToInt32(Console.ReadLine();/从键盘读入整型数据赋给xwhile(x!=-1)n+;y+=x;x=Convert.ToInt32(Console.ReadLine();if(n=0)returny;elsereturny/n;答案:求出从键盘上输入的一批常数的平均值,以-1作为结束输入的标志。4写出以下程序的功能。staticvoidWA(refinta,intn)for(inti=0;i<n-1;i+)intk=i;for(intj=i+1;j<n;j+)i

16、f(aj<ak)k=j;intx=ai;ai=ak;ak=x;答案:采用选择排序的方法对数组a中的n个整数按照从小到大的次序重新排列。5写出以下程序运行结果。usingSystem;classTestconstintN=5;publicstaticvoidMain()inta=0;for(inti=1;i<N;i+)intc=0,b=2;a+=3;c=a+b;Console.writeLine(c+“);答案:581114C#技术基础试题题号得分一二三四五总分得分评卷人一、单项选择题(每小题2分,共20分)1.使用Dirctory类的下列方法,可以获取指定文件夹中的文件的是().A

17、.Exists()B.GetFiles()C.GetDirectories()答案:B2.StreamWriter对象的下列方法,可以向文本文件写入一行带回车和换行的文本的是()。D.CreateDirectory()A.WriteLine()B.Write()答案:AC.WritetoEnd()D.Read()3.建立访问键时,需在菜单标题的字母前添加的符号是()。A.!B.#C.$D.&答案:D4.在C#.Net中,用来创建主菜单的对象是()。答案:C5.下面所列举的应用程序中,不是多文档应用程序的是(答案:D6.在VC#.Net中,可以标识不同的对象的属性是()。答案:B7.加载

18、窗体时触发的事件是()。答案:B8.改变窗体的标题,需修改的窗体属性是()。答案:A9.在接口的成员中,不能包含().答案:D10.在C#中定义接口时,使用的关键字是()。答案:A)得分评卷人二、填空题(每空2分,共20分)1元素类型为double的2行5列的二维数组共占用答案:80字节的存储空间。2C#数组类型是一种引用类型,所有的数组都是从System命名空间的引用对象。答案:object3枚举是从System.答案:Enum类继承而来的4一般将类的构造方法声明为private,就不能创建该类的对象。答案:public或公有5.类中声明的属性往往具有get()和两个函数。答案:set()6

19、.对于方法,参数传递分为值传递和答案:引用传递7.传入某个属性的SET方法的隐含参数的名称是。答:value8.C#的类不支持多重继承,但可以用来实现。答案:接口9.C#提供一个默认的无参构造函数,当我实现了另外一个有一个参数的构造函数时,还想保留这个无参数的构造函数。这样我应该写答:两个10在方法定义中,virtual含义:答案:被virtual修饰的方法可以被子类覆写构造函数。得分评卷人三、判断题(每题2分,20分)1.可以覆写私有的虚方法。答:错2.可以能够阻止某一个类被其他类继承。答:对3.不能指定接口中方法的修饰符。答:对4.DotNet包含两个部分,即公共语言运行时和框架类库答案:

20、对5.在同一行上可以书写多条语句,每条语句间用分号分隔。答案:对6.在数据类型转化时,只能通过类型转换关键字或Convert类实现。答案:错7.在定义数组时不允许为数组中的元素赋值。答案:错8.定义枚举时至少为其中的一个枚举成员赋值。答案:错9.结构只能静态访问。答案:错10.接口与类相同是面向对象程序设计的核心,是创建对象的模版。答案:对得分评卷人三、程序阅读题(每小题5分,共30分)1.写出以下程序运行结果。usingSystem;classTeststaticvoidLE(refinta,refintb)intx=a;a=b;b=x;Console.writeLine(a+“+b);pu

21、blicstaticvoidMain()intx=10,y=25;LE(refx,refy);Console.writeLine(a+“+b);答案:252510102.写出下列函数的功能。staticintSA(inta,intb)if(a>b)return1;elseif(a=b)return0;elsereturn-1;答案:比较两个整数a和b的大小,若a>b则返回1,若a=b则返回0,若a<b则返回-1。3写出下列函数的功能。staticfloatFH()floaty=0,n=0;intx=Convert.ToInt32(Console.ReadLine();/从键盘

22、读入整型数据赋给xwhile(x!=-1)n+;y+=x;x=Convert.ToInt32(Console.ReadLine();if(n=0)returny;elsereturny/n;答案:求出从键盘上输入的一批常数的平均值,以-1作为结束输入的标志。4写出以下程序的功能。staticvoidWA(refinta,intn)for(inti=0;i<n-1;i+)intk=i;for(intj=i+1;j<n;j+)if(aj<ak)k=j;intx=ai;ai=ak;ak=x;答案:采用选择排序的方法对数组a中的n个整数按照从小到大的次序重新排列。5写出以下程序运行结

23、果。usingSystem;classTeststaticinta=1,2,3,4,5,6,7,8;publicstaticvoidMain()ints0,s1,s2;s0=s1=s2=0;for(inti=0;i<8;i+)switch(ai%3)case0:s0+=Test.ai;break;case1:s1+=Test.ai;break;case2:s2+=Test.ai;break;Console.WriteLine(s0+""+s1+""+s2);答案:912156写出以下程序运行结果。usingSystem;classTestconst

24、intN=5;publicstaticvoidMain()inta=0;for(inti=1;i<N;i+)intc=0,b=2;a+=3;c=a+b;Console.writeLine(c+“);答案:581114得分评卷人五、简答题(10分,每题5分)1.接口和抽象类的区别是什么?答:接口用于规范,抽象类用于共性。接口中只能声明方法,属性,事件,索引器。而抽象类中可以有方法的实现,也可以定义非静态的类变量。抽象类是类,所以只能被单继承,但是接口却可以一次实现多个。抽象类可以提供某些方法的部分实现,接口不可以.抽象类的实例是它的子类给出的。接口的实例是实现接口的类给出的。再抽象类中加入

25、一个方法,那么它的子类就同时有了这个方法。而在接口中加入新的方法,那么实现它的类就要重新编写(这就是为什么说接口是一个类的规范了)。接口成员被定义为公共的,但抽象类的成员也可以是私有的、受保护的、内部的或受保护的内部成员(其中受保护的内部成员只能在应用程序的代码或派生类中访问)。此外接口不能包含字段、构造函数、析构函数、静态成员或常量。C#技术基础试题题号得分一二三四五总分得分评卷人一、单项选择题(每小题2分,共20分)1.属于C#语言的关键字()。答案:A2.C#语言中,值类型包括:基本值类型、结构类型和()。答案:D3.假定一个10行20列的二维整型数组,下列哪个定义语句是正确的(A.in

26、tarr=newint10,20B.intarr=intnew10,20C.int,arr=newint10,20D.int,arr=newint20;10答案:C4在类作用域中能够通过直接使用该类的()成员名进行访问。答案:D5.以下正确的描述是()。A.函数的定义可以嵌套,函数的调用不可以嵌套B.函数的定义不可以嵌套,函数的调用可以嵌套C.函数的定义和函数的调用均可以嵌套D.函数的定义和函数的调用均不可以嵌套答案:B6.小数类型和浮点类型都可以表示小数,正确说法:()A.两者没有任何区别B.小数类型比浮点类型取值范围大)。C.小数类型比浮点类型精度高D.小数类型比浮点类型精度低答案:C8能

27、作为C#程序的基本单位是(A.字符答案:B9.可用作C#程序用户标识符的一组标识符是(A.voidC.for答案:B10.引用类型主要有4种:类类型、数组类型、接口类型和(答案:C得分评卷1在switch语句中,每个语句标号所含关键字case后面的表达式必须是。答案:常量表达式2在while循环语句中,一定要有修改循环条件的语句,否则,可能造成答案:死循环3C#数组元素的下标从答案:04当在程序中执行到答案:continue5元素类型为double的2行5列的二维数组共占用答案:80字节的存储空间。语句时,将结束所在循环语句中循环体的一次执行。开始。6C#数组类型是一种引用类型,所有的数组都是

28、从System命名空间的引用对象。答案:object7枚举是从System.答案:Enum类继承而来的8一般将类的构造方法声明为private,就不能创建该类的对象。答案:public或公有9.类中声明的属性往往具有get()和两个函数。答案:set()10.对于方法,参数传递分为值传递和答案:引用传递得分评卷人三、判断题(每题2分,20分)1.在C#中,所有类都是直接或间接地继承System.Object类而得来的。答案:对2.在C#中,任何方法都不能实现多继承。答案:错3.在C#中,子类不能继承父类中用private修饰的成员变量和成员方法。答案:对3.在C#类中,this代表了当前类本身

29、。答案:错4.菜单项标题中有含有带下划线的字符,这是快捷键。答案:错5.在C#Net中,窗体父子关系通过“属性”窗口来创建。答案:对6.静态类和实例类的区别在于:静态类不需要初始化即可直接使用,实例类需要进行实例化,生成对象才可使用。答案:对7.使用Directory类的Move()方法可以删除文件。答案:错8.使用FileInfo类的Copy()方法可以复制文件。答案:对9.DataSet对象中的表可以和数据库中的表同名,也可以不同名。答案:对10.Command对象可以执行SQL语句。答案:对得分评卷人三、程序阅读题(每小题5分,共30分)1写出以下程序的运行结果。usingSystem;classTestpublicstaticvoidMain()intx=5;inty=x+;Console.WriteLine(y);y=+x;Console.WriteLine(y);答案:572.写出以下程序的运行结

温馨提示

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

评论

0/150

提交评论