数据结构考试 课堂测试MATCH_
word
word文档格式规范word作业纸小票打印word模板word简历模板免费word简历
_1714155129905_0(2)——C#程序
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
一.单项选择题(共25小题) 1.分析下列代码段: static void Main(string[] args) { String[] words=new string[]{"a","b","c"}; foreach (string word in words) { word = "abc"; Console.WriteLine(word); } Console.ReadKey(); } 最终的运行结果是什么?()(单选) A. bc ac ab B. abc abc abc C. 不能正确编译 D. a b c 2. 有一个二维数组申明为int[,] myArray = {{1,2,3,4},{2,3,4,5},{3,4,5,6}},那么myArray[2,3]的值是什么?()(单选) A. 3 B. 6 C. 5 D. 4 3. 在数组中,对于for和 foreach语句,下列哪些选项中的说法是正确的()(多选) A. 如果需要修改数组元素就必须使用for语句 B. foreach语句总是从索引0遍历到索引Length-1 C. foreach语句能使你不用索引就可以遍历整个数组 D. foreach语句总是遍历整个数组 4. 下列关于数组的描述中,哪些选项是正确的?()(多选) A. string类本身可以被看做是一个System.Char对象的数组 B. string类中的许多方法都能用在数组中 C. 数组可以用来处理数据类型不同的批量数据 D. System.Array类是所有数组的基类 5. 构建Windows窗体以及其所使用空间的所有类的命名空间是下列那个选项?()(单选) A. System.IO B. System.Text C. System.Data D. System.Windows.Forms 6. 在控制台程序中必须有一个static void Main(),下列关于这个方法的描述中,哪些是正确?()(多选) A. 这个方法叫做入口点函数 B. 该方法不可以有返回类型 C. 声明Main()方法时既可以使用参数,也可以不使用 D. 必须在结构或类的内部 7. 下列关于“方法重载”的描述中,哪些选项是正确的?()(多选) A. 方法重载即“同样的方法名但传递的参数不同” B. 方法ConsoleW(int_value)是方法ConsoleW(string_value)的重载 C. 构造函数不可以重载 D. 方法重载可以扩充现有类的功能 8. 窗体中增加按钮和其他空间,可以使用下列方法中的哪一种?()(多选) A. 单击“工具箱”上的控件,并将其拖放到窗体的理想位置,接着就可以把一个控件拖放到窗体中 B. 单击“工具箱”上的控件,然后在窗体期望的位置单击并拖动出一个长方形,接着就可以在窗体上绘制出一个控件。 C. 在 “工具箱”上双击空间图标便可以将一个控件添加到窗体的左上角然后根据需要拖动控件 D. 右击“工具箱”上的控件,选择“添加”就可以将一个控件添加到窗体的左上角,然后可以根据需要将控件移动到适当的位置。 9. 下列关于多态的说法中,那个是正确的?()(单选) A. 虚方法是实现多态的唯一手段 B. 重写虚方法时可以为虚方法指定别称 C. 多态性是指以相似的手段来处理不相同的派生类 D. 抽象类中不可以包含虚方法 10. 下列关于结构与类的描述中,哪些选项是不正确的?()(多选) A.结构和类都是引用类型 B.结构实例化需要用new C.结构不能继承 D.结构中初始化字例字段是错误的 11. 下列关于派生类和抽象类的描述中,哪些选项是错误的()(多选) A. 在C#中在派生类中重新定义基类类的虚函数必须在前面加override. B. 抽象类必须包含一个或多个抽象成员 C. 在C#中派生类可以使用base修饰符访问基类的成员 D. 声明为abstract类的方法必须同时进行声明和实现 12. C#中TestClass为一自定义类,其中有以下属性定义 public void Property{…} 使用以下语句创建了该类的对象,并使变量obj引用该对象: TestClass obj=new TestClass(); 那么,可通过什么方式访问类TestClass的Property属性()(单选) A.MyClass.Progerty; B.obj:: Property; C. obj. Property; D. obj. Property(); 13. 在类TestClass中的构造函数有如下重载: public TestClass(params int[] _value) { Console.WriteLine(“params contrctor!”); } public TestClass(int x,int y) { Console.WriteLine(“two int contructor!”); } 运行下面的代码后, TestClass obj1=new TestClass(0); TestClass obj2=new TestClass(1,3); TestClass obj3=new TestClass(1,3,4); 最后的输出结果是什么?()(单选) A. params contrctor!two int contructor!two int contructor! B. params contrctor! params contrctor! params contrctor! C.无法编译通过 D. params contrctor! two int contructor! params contrctor! 14. 下列关于继承说法中,哪个选项是正确的?()(单选) A.继承是指派生类可以获取其基类特征的能力 B.继承最主要的优点是提高代码性能 C.派生类可以继承多个基类的方法和属性 D.派生类必须通过base关键字调用基类的构造函数 15. 下列对于委托理解的描述中,哪些选项是正确的?()(多选) A.用delegate关键字声明 B.类似于函数的指针 C.声明时必须和目标函数具有同样的签名 D.委托是安全的 16. 下列关于多态的说法中,哪个选项是正确的?()(单选) A. 虚方法是实现多态的唯一手段; B. 重写虚方法时可以为虚方法指定别称 C. 多态性是指以相似的手段来处理各不相同的派生类 D.抽象类中不可以包含虚方法 17. 下列关于接口的说法中,哪个选项是错误的?()(单选) A. 一个类可以有多个基类和多个基接口 B. 抽象类和接口都不能被实例化 C. 抽象类自身可以定义成员而接口不可以 D.类不可以多重继承而接口可以 18. 下列关于构造函数的描述中,哪个选项是正确的?()(单选) A. 构造函数必须与类名相同 B. 构造函数不可以用private修饰 C. 构造函数不能带参数 D. 构造函数可以声明返回类型 19. 引用数组元素时,数组下标的数据类型可以允许哪项类型?()(单选) A. 整型常量 B. 整型表达式 C. 整型常量或整型表达式 D. 任何类型的表达式 20. 分析下列程序代码: using System; class Program { static void Main(string[] args) { string testString = "Visual Studio 2005"; string newString = string.Empty; foreach (char ch in testString) { if (ch == 'i' || ch == 'u') continue; newString += ch.ToString(); } Console.WriteLine(newString); } } 哪项的输出是正确的?()(单选) A. iu ui B. V C. Vsal Stdo 2005 D. Visual Studio 2005 21. 分析下列程序代码: using System; public class Program { static void Main(string[] args) { for (int i = 1; i<=16;i++) { if(i%4==0) Console.WriteLine(i.ToString()+" "); } } } 哪项的输出是正确的?()(单选) A. 1 2 3 5 6 7 9 10 11 13 14 15 B. 4 16 C. 4 8 12 16 D. 1 2 3 4 5 6 … … 14 15 16 二.综合题(共6小题) 1. 下面这段程序要完成的功能是:从输入的字符串中找出小写字母并输出到终端。请检查下列代码,找出所有错误的代码,并在错误代码行后填入该行完整的正确代码。 1. using System; 2. public class Program 3. { 4. static void Main(string [] args) 5. { 6. string inputString=Console.ReadLine(); 7. string lowerCase=string.Empty; 8. foreach (char ch in inputString) 9. if (ch>='a'||ch<='z') 10. lowerCase+=ch.ToString; 11. Console.WriteLine("小写字母有:"+lowerCase); 12. } 13. } 更正以下两句: 9. if (ch>='a'&&ch<='z') 10. lowerCase+=ch.ToString(); 2. 下述代码用于重写Message方法。请分析下述代码,并更正错误代码行。 1. interface IMsg 2. { 3. void Message(); 4. } 5. public class MyClass : IMsg 6. { 7. public virtual void Message() 8. { 9. Console.WriteLine("MyClass"); 10. } 11. } 12. public class MyDerivedClass : MyClass 13. { 14. public void Message() 15. { 16. Console.WriteLine("MyDerivedClass"); 17. } 18. } 第14行:更正为: public override void Message() 3. 分析下列程序段: static void Main(string [] args) { string[] myArray = new string[] { "Kinger", "Norman", "Ruby", "Mark" }; Sort(myArray); foreach (string str in myArray) Console.Write(str + " "); } public static void Sort(string[] array) { string str; for (int j = 0; j < array.Length - 2; j++) { for (int i = 0; i < array.Length - j - 1; i++) { str = array[i]; array[i] = array[i + 1]; array[i + 1] = str; } } } 最终的结果是什么("Ruby"、"Mark"、"Norman"、"Kinger" ) 4. 下面代码的功能是遍历整个数组并将其显示出来,但是有一行代码有错误请检查下列代码,并在错误的代码行后填入该行完整的正确代码: 1. static void Main(string [] args) 2. { 3. string[] myArray = new string[] { "C#","C++","VB","java"}; 4. for (int i = 0; i
本文档为【C#程序设计第二次课堂测试题】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。