C#笔试题面试题锦集(12)

这里是总目录: C#笔试题面试题锦集(全)

 

Part A:

1).net 里面的三层结构.

 2).NET内值对象.

 3)一个页面调用另一个页面的状态有几种方法.

 4)session和application有什么区别.

 5)如何让一个类不允许被new出来.

Part B:

1 Visual Studio.NET 有几个集成开发环境?

○ A.一个 ○ B.两个 ○ C.三个 ○ D.四个

2 我们称.NET编程架构是什么?

○ A..NET Framework ○ B.VS.NET ○ C.XML Web Service ○ D. 开发工具

3 以下那些标准是与Web Service相关的

○ A..SOAP ○ B. WSDL ○ C.UDDI ○ D. 以上都是

4 SOAP标准是谁来制定的?

○ A. Microsoft ○ B. W3C ○ C.IBM ○ D. SUN

5 Visual Studio.NET 会支持多少种开发语言?

○ A. 两种 ○ B. 三种 ○ C.四种 ○ D. 多种

6 ASP.NET 是用来开发何种应用的?

○ A. Windows应用 ○ B. .NET组件类 ○ C. Web应用 ○ D. 命令行应用程序

7 C#编译器将C#程序编译成什么样的代码?

A. 汇编语言代码

B. 机器语言代码

C. 微软中间语言代码

D. 二进制代码

答案:C

Part C:

1. 所有的.NET基类库是用什么语言编写的?

○ A. C++ ○ B. C# ○ C. VB.NET ○ D. 汇编

2. 什么语言提供了对XML注释的支持?

○ A. C++ ○ B. C# ○ C. VB.NET ○ D. Jscript

3. 关于微软中间语言,下面什么说法错误的?

A. 它是解释执行的。

B. 在执行时,它被转化为机器代码。

C. 它是处理器无关的指令集。

D. 它允许真正的跨语言集成。

4. . ASP.NET比ASP相比较,下列哪个是不正确的?

A. 支持更多编程语言

B. 可以同时存在于一个应用程序里

C. 用户界面和代码分离,大大提高编程质量

D. 都支持页面级和应用程序级的跟踪调试

5.  关于VB.NET,与C#(发音,C sharp)比较,下列哪项是不正确的?

A. 都是类型安全的编程语言。

B. 都支持自动垃圾收集。

C. 都是面向对象的语言。

D. VB.NET不支持API调用。

6.  微软在VS.NET默认安装中提供了几种编程语言的开发环境?

A. 2种

B. 3种

C. 4种

D. 5种


Part A:

1 下列哪些不是公共语言运行环境(CLR)的特性?

A. 代码执行管理

B. 管理函数指针调用

C. 类型安全

D. 代码访问安全

 

2 下面哪个不是ADO.NET对象?

A. 数据适配器DataAdapter

B. 记录集Recordset

C. 数据集DataSet

 

3 什么工具来进行数据库建模?

A. SQL Server。

B. VS.NET架构版中的Visio。

C. VS.NET的集成环境。

D. Biztalk Server。

 

4 ACT(微软应用程序中心测试工具)能够用来进行下面哪些测试:

A. Web应用程序的功能性测试

B. 性能测试

C. 压力测试

D. 以上所有

 

5 ADO.NET中,数据集的Schema(结构定义)用什么来描述?

A. SQL语句

B. XML

C. 为达到最高的效率而设计的二进制标准

 

6 ASP.NET支持哪种会话状态保存的方式:

A. 服务器进程内

B. 状态服务(State Service)

C. SQL 服务器

D. 以上都是

 

 Part B:

3.1.1 下列哪种语言不是面向对象的?

A. C#

B. VB

C. VB.NET

D. C++

 

3.1.2 .NET框架不可以运行在什么样的平台上?

A. Windows 2000

B. Windows NT 4.0

C. Windows 98

D. Windows XP

E. Windows 95

 

 

3.1.3 VB.NET 是一种完全面向对象的语言吗?

○ A. 是 ○ B. 不是

 

3.1.4 用户可以在.NET环境中使用Java语言吗?

○ A. 可以 ○ B. 不可以

 

3.1.5 ASP和ASP.NET应用程序可以同时在同一个Web Server上运行,并不相互影响。这种说法:

A. 正确

B. 错误

 

3.1.6 在.NET应用中,如果开发时分配了内存却不小心忘了及时释放,会造成内存不足吗?

A. 会

B. 不会

 

3.3 对于发布.NET应用,那个说法正确?

A. 只能使用文件复制发布 xcopy

B. 只能使用Windows Installer

C. 只能使用打包和发布向导

D. 以上方法都可以

 

3.3.1 关于C#语言的描述,下列哪项是不正确的?

A. 和Java一样,都起源于C++语言

B. 和Java都已经提交给ECMA国际标准组织。

C. 它支持C++所不支持的接口(Interface)

D. 它支持自动垃圾回收

 

3.3.2 下面哪一条有关ASP.NET是错误的?

A. 比ASP需要更多代码

B. 是编译执行的

C. 服务器端控件可以减小客户端编程工作量

D. 编译后的页可以被缓存起来提高性能

 

3.3.3 真正实现跨平台集成的技术是什么?

A. HTML。

B. Java。

C. DCOM。

D. XML web service。

 

3.3.4 微软.NET框架快速开发的原因是什么?

A. 丰富的类库

B. 统一的编程模型

C. 优秀的集成环境

D. 以上都是

 

3.3.5 下列哪条不包括在.NET框架中?

A. ASP.NET

B. MFC

C. ADO.NET

D. Windows 表单

 

3.4.1 关于VC++.NET的管理扩展,下面哪个说法不正确?

A. 它默认情况下不被安装

B. 它可以将现有的代码直接移植到.NET

C. 它可以完成所有C#能做到的

D. 它完全支持.NET框架

 

3.4.2 VS.NET支持VB6的升级,不正确的说法是哪个?

A. VS.NET提供该升级向导

B. VB表单和用户控件被升级到Windows表单

C. ADO数据绑定可升级到ADO.NET

D. ActiveX文档, DHTML页面被升级

 

 

13. ADO.NET数据集在那里创建数据缓冲?

A. 数据库服务器内存

B. Web服务器内存

C. 客户端内存

 

 

3.4.3 下面哪种特性VB.NET中没有提供?

A. 类的继承

B. 指针

C. Delegate

D. Attributes

 

11. 在C#中,怎样决定一个对象的类型?

A. 使用is操作符

B. 使用typeof操作符

C. 使用GetType方法

 

3.4.4 在一个过程里面发生了意外(Exception),而该过程里没有设置如何处理它,那么会发生什么情况?

A. 产生错误。

B. 该应用程序被终止。

C. 显示错误信息。

D. 该意外传回调用者或者前一个过程

 

 3.5 当你升级一个Visual Basic 6.0的应用程序时,变体数据类型会被转换成:

A. 整型

B. 字节型

C. 对象类型

D. 字符串类型

 

 

一个名字空间可以分布在多少个装配件里面?

A. 无

B. 一个

C. 两个

D. 可以按需要任意多个。

 

5. 为了使用全局装配件缓冲,装配件必须有:

A 强命名

B 弱命名

C 都可以

 

6. 我们可以使用那个命令行工具从全局装配件缓冲中安装或删除装配件?

A. gacutil.exe

B. pview.exe

C. al.exe

D. csc.exe

 

 

7. .NET中下列什么工具可以用来察看策略信息?

A 代码访问安全工具( Caspol.exe)

B 权限查看工具(permview.exe)

C 都可以

 

 

 

11. 12. 在ADO.NET中,数据关联类说明了在同一个数据集里的两张数据表中的一列或多列之间的关系。这种说法:

A. 正确

B. 错误

 

13. 非连接数据访问模式比连接数据访问模式更适合于那些需要高可扩展性的应用程序。这种说法:

A. 正确

B. 错误

 

16. 事务的启动或终止可以使用下面那种对象:

A. 事务对象

B. 连接对象

C. 命令对象

 

 

15. 数据适配器能被用来基于SQL join操作更新数据表中的数据,这种说法:

A. 正确

B. 错误

 

 

Question 31. (单选)

  根据线程安全的相关知识,分析以下代码,当调用test方法时i>10时是否会引起死锁?

public void test(int i)
{
lock(this)
{
if (i>10)
{
i--;
test(i);
}
}
}

   1. 会锁死
   2. 不会锁死

Question 32. (单选)

  以下描述错误的是()

  1. 在C++中支持抽象类而在C#中不支持抽象类。
  2. C++中可在头文件中声明类的成员而在CPP文件中定义类的成员,在C#中没有头文件并且在同一处声明和定义类的成员。
  3. 在C#中可使用 new 修饰符显式隐藏从基类继承的成员。
  4. 在C#中要在派生类中重新定义基类的虚函数必须在前面加Override。
 
Question 33. (单选)

  int[][] myArray3=new int[3][]{new int[3]{5,6,2},new int[5]{6,9,7,8,3},new int[2]{3,2}}; myArray3[2][2]的值是()。

  1. 9
  2. 2
  3. 6
  4. 越界
 
Question 34. (单选)

  在C#中利用Socket进行网络通信编程的一般步骤是:建立Socket侦听、( )、利用Socket接收和发送数据。

  1. 建立Socket连接
  2. 获得端口号;
  3. 获得IP地址;
  4. 获得主机名;
 
Question 35. (单选)

  如果设treeView1=new TreeView(),TreeNode node=new TreeNode("根结点" ),
          则treeView1.Nodes.Add(node)返回的是一个 ()类型的值。

  1. TreeNode;
  2. int;
  3. string;
  4. TreeView;
 
Question 36. (单选)

  声明一个委托public delegate int myCallBack(int x); 则用该委托产生的回调方法的原型应该是

  1. void myCallBack(int x)
  2. int receive(int num)
  3. string receive(int x)
  4. 不确定的
 
Question 37. (单选)

  关于ASP.NET中的代码隐藏文件的描述正确的是

  1. Web窗体页的程序的逻辑由代码组成,这些代码的创建用于与窗体交互。编程逻辑唯一与用户界面不同的文件中。
          该文件称作为“代码隐藏”文件,如果用C#创建,该文件
  2. 项目中所有Web窗体页的代码隐藏文件都被编译成.EXE文件
  3. 项目中所有的Web窗体页的代码隐藏文件都被编译成项目动态链接库(.dll)文件
  4. 以上都不正确
 
Question 38. (单选)

  What compiler switch creates an xml file from the xml comments in the files in an assembly?

  1. /text
  2. /doc
  3. /xml
  4. /help
 
Question 39. (单选)

  下面的代码实现了设计模式中的什么模式

  public class A {
  private A instance;
  private A() {
  }

  public static A Instance {
  get
  {
  if ( A == null )
  A = new A();
  return instance;
  }
  }
  }

   1. Factory
   2. Abstract Factory
   3. Singleton
   4. Builder
 
Question 40. (单选)

class Class1
{
public static int Count = 0;
static Class1()
{
Count++;
}
public Class1()
{
Count++;
}
}
Class1 o1 = new Class1();
Class1 o2 = new Class1();

  请问,Class1.Count的值是多少?( )

   1. 1
   2. 2
   3. 3
   4. 4

Question 41. (单选)
abstract class BaseClass
{
public virtual void MethodA()
{
Console.WriteLine("BaseClass");
}
public virtual void MethodB()
{
}
}
class Class1: BaseClass
{
public void MethodA()
{
Console.WriteLine("Class1");
}
public override void MethodB()
{
}
}
class Class2: Class1
{
new public void MethodB()
{
}
}
class MainClass
{
public static void Main(string[] args)
{
Class2 o = new Class2();
o.MethodA();
}
}

  请问,此程序输出结果是:

   1. BaseClass
   2. BassClass Class1
   3. Class1
   4. Class1 BassClass
 
Question 42. (单选)

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);
}

   1. i=2001,o=2000,j=2000
   2. i=2001,o=2001,,j=2001
   3. i=2000,o=2001,,j=2000
   4. i=2001,o=2000,j=2001
 
Question 43. (多选)

  您要创建ASP.NET应用程序用于运行AllWin公司内部的Web站点,这个应用程序包含了50个页面。
您想要配置这个应用程序以便当发生一个HTTP代码错误时它可以显示一个自定义的错误页面给用户。
您想要花最小的代价完成这些目标,您应该怎么做?(多选)

   1. 在这个应用程序的Global.asax文件中创建一个Application_Error过程去处理ASP.NET代码错误。
   2. 在这个应用程序的Web.config文件中创建一个applicationError节去处理ASP.NET代码错误。
   3. 在这个应用程序的Global.asax文件中创建一个CustomErrors事件去处理HTTP错误。
   4. 在这个应用程序的Web.config文件中创建一个CustomErrors节去处理HTTP错误。
 
Question 44. (单选)

  如下程序的运行结果是:

public abstract class A
{
public A()
{
Console.WriteLine('A');
}
public virtual void Fun()
{
Console.WriteLine("A.Fun()");
}
}

public class B: A
{
public B()
{
Console.WriteLine('B');
}

public new void Fun()
{
Console.WriteLine("B.Fun()");
}

public static void Main()
{
A a = new B();
a.Fun();
}
}

   1. A B A.Fun()
   2. A B B.Fun()
   3. B A A.Fun()
   4. B A B.Fun()
 
Question 45. (单选)

  Which of these string definitions will prevent escaping on backslashes in C#?*

   1. string s = #”\n Test string”;
   2. string s = “\n Test string”;
   3. string s = @”\n Test string”;
   4. string s = “\n Test string”;
 
Question 46. (单选)

  Which of the following operations can you NOT perform on an ADO.NET DataSet?

   1. A DataSet can be synchronised with a RecordSet.
   2. A DataSet can be synchronised with the database.
   3. A DataSet can be converted to XML.
   4. You can infer the schema from a DataSet
 
Question 47. (单选)

  In Object Oriented Programming, how would you describe encapsulation?

   1. The conversion of one type of object to another.
   2. The runtime resolution of method calls.
   3. The exposition of data.
   4. The separation of interface and implementation.
 
Question 48. (单选)

  How does assembly versioning in .NET prevent DLL Hell?

   1. The runtime checks to see that only one version of an assembly is on the machine at any one time.
   2. .NET allows assemblies to specify the name AND the version of any assemblies they need to run.
   3. The compiler offers compile time checking for backward compatibility.
   4. It doesn’t.
 
Question 49. (单选)

  三种常用的字符串判空串方法:

   1: bool isEmpty = (str.Length == 0);
   2: bool isEmpty = (str == String.Empty);
   3: bool isEmpty = (str == "");

  哪种方法最快?

   1. 1
   2. 2
   3. 3
 
Question 50. (单选)

public sealed class SampleSingleton1
{
private int m_Counter = 0;
  private SampleSingleton1()
{
Console.WriteLine(""初始化SampleSingleton1。"");
}

public static readonly SampleSingleton1 Singleton = new SampleSingleton1();

public void Counter()
{
m_Counter ++;
}
}

  以上代码实现了设计模式中的哪种模式?

   1. 原型
   2. 抽象工厂
   3. 单键
   4. 生成器

 

你可能感兴趣的:(面试题)