yahoo 的 C# 筆試題

NO IMAGE

從某個地方copy過來的,它的原 出處只出了30~50我也就只能轉過來30~51……感覺問得很基礎,卻沒幾道會的,更沒幾道能較準的,尤其是關於DP的那幾道題,尤其,尤其是翻譯成中 文的那些……譯得很垃圾的樣子……還要我把它再翻譯成英語才能明白它說的到底是什麼東西,汗…………

PS:DP到現在除了abstract factory和singleton之外其它的只能說理解了它那麼做有什麼好處,有不多的幾個看起來就很典型的能認出來,寫是絕對寫不出來的,汗……

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. 生成器