C语言开发工程师测试题

2023-06-29   


一、选择题
   1. 下列选项中,()是引用类型(选择一项)
   a)enum类型
   b)struct类型
   c)string类型
   d)int类型
  
   2. 以下描述错误的是()(选择一项)
   a)在C++中支持抽象类而在C#中不支持抽象类。
   b)C++中可在头文件中声明类的成员而在CPP文件中定义类的成员,在 C#中没有头文件并且在同一处声明和定义类的成员。
   c)在C#中可使用 new 修饰符显式隐藏从基类继承的成员。
   d)在C#中要在派生类中重新定义基类的虚函数必须在前面加Override。
  
   3. C#的数据类型有()(选择一项)
   a)值类型和调用类型;
   b)值类型和引用类型;
   c)引用类型和关系类型;
   d)关系类型和调用类型;
  
   4. 下列有关.NET类的描述错误的是()(选择三项)
   a)类不可以多层继承而接口可以;
   b)抽象类自身可以定义成员而接口不可以;
   c)抽象类和接口都不能被实例化;
   d)一个类可以有多个基类和多个基接口;
  
   5. 下列关于.NET构造函数的描述正确的是()(选择一项)
   a)构造函数可以声明返回类型。
   b)构造函数不可以用private修饰
   c)构造函数必须与类名相同
   d)构造函数不能带参数
  
   6. 以下是一些C#中的枚举型的定义,其中错误的用法有()(选择一项)
  
   a)public enum var1 Mike = 100, Nike = 102, Jike
   b)public enum var1 Mike = 100, Nike, Jike
   c)public enum var1 Mike=-1.23 , Nike, Jike 枚举型应为整型的
   d)public enum var1 Mike , Nike , Jike
  
   7. 下列代码执行结果是()(选择一项)
   public static void Main(string[] args)
  
   int i = 2000;
   object o = i;
   i = 2001;
   int j =(int) o;
   Console.WriteLine(“i=0,o=1, j=2”,i,o,j);
  
   a) i=2001,o=2000,j=2000
   b) i=2001,o=2001,,j=2001
   c) i=2000,o=2001,,j=2000
   d) i=2001,o=2000,j=2001
   8. 下列关于C#中索引器理解正确的是( ) (选择一项)
   a)索引器的参数必须是两个或两个以上
   b)索引器的参数类型必须是整数型
   c)索引器没有名字
   d)以上皆非
  
   9. 要对多线程进行操作则必须包含( ) (选择一项)
   a)System.ComponentModel命名空间;
   b)System. Collections命名空间;
   c)System. Threading命名空间;
   d)Microsoft.Win32命名空间;
  
   10.
   以下说法正确的是()(选择一项)
   ①执行该程序发生异常
   ②catch块执行
   ③finally块执行
   ④catch块不执行
   a) ①③④
   b) ①③
   c) ①②③
   d) ③④
  
   11)在C#中,允许多接口继承,从多个接口继承时,使用“:”后跟被继承的接口的名字,多个接口名称之间使用()符号进行分割。(选择一项)
   a)“.”
   b)“,”
   c)“-〉”
   d)“::”
  
   12) 有C#代码如下:
  
   在横线处填入语句(),输出为:C# is simple。(选择两项)
   a) Console.PrintLine(“C# is simple”)
   b) Console.WriteLine(“C# is simple”)
   c) System.Console.WriteLine(“C# is simple”)
  
   13) 阅读下列程序
  
   在myClass的Main()函数中,有代码如下:method1( );代码执行后,
   输出为()。(选择一项)
   a) 3
   b) 0
   c) 非法的方法调用,没有输出
  
   14) C#中,声明一个带参数的Main方法,代码为()。(选择一项)
   a) public static void Main()
   b) public static void Main(String[])
   c) public static void Main(String[] args)
   d) public static void Main(String * args)
  
   15) 要将一个C#程序编译为扩展名为DLL的程序库应用程序,要打开的编译器选项为()。(选择两项)
   a) /target:library
   b) /t: library
   c) /t: exe
   d) /target: winexe
  
   16) 在C#程序中,如果类B要继承A,类B正确的定义为()。(选择一项)
   a) public class B inheritA
   b) public class B:A
   c) public classB::A
   d) public class B form A
  
   17)下列说法正确的是()(选择一项)
   ①c#是面向对象的编程语言
   ②装箱是从值类型到引用类型的转换
   ③cla(公共语言规范)是cts的子集,确保了跨语言互操作
   ④.NET平台使用统一的API
   a) 以上都正确
   b) ④正确
   c) ①③④正确
   d) ①②③正确
  
   18)下列说法正确的是()(选择两项)
   a) 在c#中使用关键字static定义静态成员
   b) 静态成员不与任何特定对象相关联
   c) 变量名命名为@关键字是不合法的
  
   19)下列说法正确的是()(选择一项)
   a) c#支持for、foreach、while和do-while循环语句
   b) c#只支持for、while和do-while循环语句
   c) c#支持foreach、while和do-while循环语句
   d) c#支持for、foreach、和while循环语句
  
   20)可用于在控制台显示文本的方法是()(选择两项)
   a) System.Console.Read方法
   b) System.Console.ReadLine方法
   c) System.Console.Write方法
   d) System.Console.WriteLine方法
  
   21)下列说法错误的是()(选择两项)
   a).NET提供多语言支持
   b).NET应用程序不需要CLR的管理即可执行
   c).NET应用程序要经过两次编译方可执行
   d)IL是机器码
  
   22)在c#中密封类()(选择两项)
   a) 用final指定
   b) 用对指定
   c) 可以被继承
   d) 不可以被继承
  
   23)下列有关事件的说法正确的是()(选择一项)
   ①定义事件时首先定义委托
   ②可以让多个对象预订事件
   ③引发事件时,将调用所有预订了该事件的对象的委托
   a) ①②③
   b) ①
   c) ②③
  
   24)()关键字用于创建抽象类(选择一项)
   a) interface
   b) internal
   c) using
   d) abstract
  
   25)在.NET中,以下关于命名空间的描述,正确的是()。(选择一项)
   a) 命名空间不可以进行嵌套
   b) 在一个.cs文件中,只能存在一个命名空间
   c) 用using导入命名空间
  
   26)在.NET中,程序中的错误可以划分为以下三类,除了()。(选择一项)
   a) 逻辑错误
   b) 语义错误
   c) 语法错误
   d) 规格错误
  
   27)下列说法中正确的是()(选择一项)
   ①使用.NET基类库可以读取文本文件
   ②使用.NET基类库可以从内存中读取数据和将数据写入内存中
   ③System.IO命名空间包含用于在数据流和文件中读取和写入数据的类
   ④使用.NET基类库可以读取二进制文件
   a) ①②③
   b) ①②③④
   c) ③④
   d) ①②
  
   28)只读属性通过()关键字来设置(选择一项)
   a) Get 得到
   b) readonly
   c) set 设置
   d) this
  
   29)下列说法正确的是()(选择两项)
   a) c#操作符重载不使用任何关键字即可完成
   b) namespace表示命名空间
   c) 使用internal修饰的成员仅可以从声明它的程序集内部访问
   d) 命名空间不可以嵌套
  
   30)c#的数组属于引用类型,其正确使用方法是()(选择两项)
   a) string [] str = new string [6];
   b) string str[] = new string [6];
   c) int [] array = 1,2,3,4,5; 括号在变量之前
  
   31)下列有关命名空间和程序集的说法正确的是()(选择一项)
   ①一个命名空间可以分布在多个程序集中
   ②一个程序集中可以包含多个命名空间
   ③程序集的类型包含私有程序集和共享程序集
   ④.NET使用程序集的模式共享和重用代码
   a) ②③
   b) ①②③
   c) ①②
   d) ①②③④
  
   32)下列说法是否全部正确()(选择一项)
   ①多态可以通过虚方法、抽象基类和接口的技术来实现
   ②多态是指同一操作用于不同的类的实例,不同的类将进行不同的解释,最后产生不同的执行结果
   ③虚方法在基类中用virtual来修饰,在派生类中使用override来修饰方法重写基类的虚方法
   ④一个接口可以从其他接口继承
   a) 是
   b) 否
  
   33)c#的构造函数,描述错误的是()(选择一项)
   a) 支持实例构造和静态构造
   b) 可以重载
   c) 和类同名
   d) 静态构造可以带有参数
  
   34)有关结构的说法,错误的是()(选择一项)
   a) 使用struct关键字
   b) 可以包含数据成员和函数成员
   c) 支持继承 结构不能继承
   d) 是值类型并且不需要堆分配
  
   1.分析如下所示C#代码,编译运行后的输出结果是( )。(选择一项)
   public static void Main(string[] args)
  
   int param = 2;
   string position = “”;
   switch (param)
  
   case 1:
   position = “兄长”;
   break;
   case 2:
   position = “兄弟”;
   break;
  
   Console.WriteLine(position);
  
   a) 兄长
   b) 兄弟
   c) 小妹
   d) 兄长兄弟
  
   2.现有如下一段C#代码,该代码的运行结果是( )。(选择一项)
   public static void Main()
   for (int i=1;ic)
   Console.WriteLine(a);
   else if(a
   Console.WriteLine(b+c);
   else
   Console.WriteLine(c);
  
  
   a) 10
   b) 20
   c) 50
   d) 60
  
   5. 以下C#程序:
   static void Main(string[] args)
  
   int val = 1;
   for (int i=3;ic)
   Console.WriteLine(++b);
   else
   Console.WriteLine(a+b+c);
  
  
   a) 22
   b) 23
   c) 66
   d) 编译出错
  
   9. 以下关于C#代码的说法正确的是( )。(选择一项)
   for(int i=1;i


相关内容:

  1. 应用系统开发工程师试题
  2. 外企C语言笔试题
  3. 神州数码-开发工程师笔面试
  4. 北京一家公司的.net开发工程师笔试题
  5. 面试笔试题
  6. 测试工程师职业规划书