當前位置:編程學習大全網 - 編程語言 - c# 基礎 練習題

c# 基礎 練習題

壹、選擇填空題(每空2分,***60分)

1.在對SQL Server 數據庫操作時應選用()。

a)SQL Server .NET Framework 數據提供程序;

b)OLE DB .NET Framework 數據提供程序;

c)ODBC .NET Framework 數據提供程序;

d)Oracle .NET Framework數據提供程序;

2.下列選項中,()是引用類型。

a)enum類型

b)struct類型

c)string類型

d)int類型

3.關於ASP.NET中的代碼隱藏文件的描述正確的是()

a)Web窗體頁的程序的邏輯由代碼組成,這些代碼的創建用於與窗體交互。編程邏輯唯壹與用戶界面不同的文件中。該文件稱作為“代碼隱藏”文件,如果用C#創建,該文件將具有“.ascx.cs”擴展名。

b)項目中所有Web窗體頁的代碼隱藏文件都被編譯成.EXE文件。

c)項目中所有的Web窗體頁的代碼隱藏文件都被編譯成項目動態鏈接庫(.dll)文件。

d)以上都不正確。

4.以下描述錯誤的是()

a)在C++中支持抽象類而在C#中不支持抽象類。

b)C++中可在頭文件中聲明類的成員而在CPP文件中定義類的成員,在C#中沒有頭文件並且在同壹處聲明和定義類的成員。

c)在C#中可使用 new 修飾符顯式隱藏從基類繼承的成員。

d)在C#中要在派生類中重新定義基類的虛函數必須在前面加Override。

5.C#的數據類型有()

a)值類型和調用類型;

b)值類型和引用類型;

c)引用類型和關系類型;

d)關系類型和調用類型;

6.下列描述錯誤的是()

a)類不可以多重繼承而接口可以;

b)抽象類自身可以定義成員而接口不可以;

c)抽象類和接口都不能被實例化;

d)壹個類可以有多個基類和多個基接口;

7.在DOM中,裝載壹個XML文檔的方法()

a)save方法

b)load方法

c)loadXML方法

d)send方法

8.下列關於構造函數的描述正確的是()

a)構造函數可以聲明返回類型。

b)構造函數不可以用private修飾

c)構造函數必須與類名相同

d)構造函數不能帶參數

9.以下是壹些C#中的枚舉型的定義,其中錯誤的用法有()

a)public enum var1{ Mike = 100, Nike = 102, Jike }

b)public enum var1{ Mike = 100, Nike, Jike }

c)public enum var1{ Mike=-1 , Nike, Jike }

d)public enum var1{ Mike , Nike , Jike }

10.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]的值是()。

a)9

b)2

c)6

d)越界

11.接口是壹種引用類型,在接口中可以聲明(),但不可以聲明公有的域或私有的成員變量。

a)方法、屬性、索引器和事件;

b)方法、屬性信息、屬性;

c)索引器和字段;

d)事件和字段;

12.ASP.NET框架中,服務器控件是為配合Web表單工作而專門設計的。服務器控件有兩種類型,它們是( )

a)HTML控件和Web控件

b)HTML控件和XML控件

c)XML控件和Web控件

d)HTML控件和IIS控件

13.ASP.NET中,在Web窗體頁上註冊壹個用戶控件,指定該控件的名稱為”Mike”,正確的註冊指令為( )

a)<%@Register TagPrefix = “Mike” TagName = “Space2” Src = “myX.ascx”%>

b)<%@Register TagPrefix = “Space2” TagName = “Mike” Src = “myX.ascx”%>

c)<%@Register TagPrefix = “SpaceX” TagName = “Space2” Src = “Mike”%>

d)以上皆非

14.在ADO.NET中,對於Command對象的ExecuteNonQuery()方法和ExecuteReader()方法,下面敘述錯誤的是()。

a)insert、update、delete等操作的Sql語句主要用ExecuteNonQuery()方法來執行;

b)ExecuteNonQuery()方法返回執行Sql語句所影響的行數。

c)Select操作的Sql語句只能由ExecuteReader()方法來執行;

d)ExecuteReader()方法返回壹個DataReder對象;

15.下列ASP.NET語句(b)正確地創建了壹個與SQL Server 2000數據庫的連接。

a)SqlConnection con1 = new Connection(“Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB”);

b)SqlConnection con1 = new SqlConnection(“Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB”);

c)SqlConnection con1 = new SqlConnection(Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB);

d)SqlConnection con1 = new OleDbConnection(“Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB”);

16.Winform中,關於ToolBar控件的屬性和事件的描述不正確的是()。

a)Buttons屬性表示ToolBar控件的所有工具欄按鈕

b)ButtonSize屬性表示ToolBar控件上的工具欄按鈕的大小,如高度和寬度

c)DropDownArrows屬性表明工具欄按鈕(該按鈕有壹列值需要以下拉方式顯示)旁邊是否顯示下箭頭鍵

d)ButtonClick事件在用戶單擊工具欄任何地方時都會觸發

17.在ADO.NET中執行壹個存儲過程時,如果要設置輸出參數則必須同時設置參數的方向和(),必要時還要設置參數尺寸。

a)大小;

b)上限;

c)初始值;

d)類型;

18.如果將窗體的FormBoderStyle設置為None,則( )。

a)窗體沒有邊框並不能調整大小;

b)窗體沒有邊框但能調整大小;

c)窗體有邊框但不能調整大小;

d)窗體是透明的;

19.如果要將窗體設置為透明的,則( )

a)要將FormBoderStyle屬性設置為None;

b)要將Opacity屬性設置為小於100%得值;

c)要將locked 屬性設置為True;

d)要將 Enabled屬性設置為True;

20.下列關於C#中索引器理解正確的是( )

a)索引器的參數必須是兩個或兩個以上

b)索引器的參數類型必須是整數型

c)索引器沒有名字

d)以上皆非

21.下面描述錯誤的是( )。

a)窗體也是控件;

b)窗體也是類;

c)控件是從窗體繼承來的;

d)窗體的父類是控件類;

22.要對註冊表進行操作則必須包含( )。

a)System.ComponentModel命名空間;

b)System.Collections命名空間;

c)System.Threading命名空間;

d)Microsoft.Win32命名空間;

23.要創建多文檔應用程序,需要將窗體的( )屬性設為true。

a)DrawGrid;

b)ShowInTaskbar;

c)Enabled;

d)IsMdiContainer;

24.如果設treeView1=new TreeView(),則treeView1.Nodes.Add("根節點")返回的是壹個 ()類型的值。

a)TreeNode;

b)int;

c)string;

d)TreeView;

25.下面關於XML的描述錯誤的是()。

a)XML提供壹種描述結構化數據的方法;

b)XML 是壹種簡單、與平臺無關並被廣泛采用的標準;

c)XML文檔可承載各種信息;

d)XML只是為了生成結構化文檔;

26. 以下的C#代碼,試圖用來定義壹個接口:

public interface IFile

{

int A;

int delFile()

{

A = 3;

}

void disFile();

}

關於以上的代碼,以下描述錯誤的是( )。

a)以上的代碼中存在的錯誤包括:不能在接口中定義變量,所以int A代碼行將出現錯誤;

b)以上的代碼中存在的錯誤包括:接口方法delFile是不允許實現的,所以不能編寫具體的實現函數;

c)代碼void disFile();聲明無錯誤,接口可以沒有返回值;

d)代碼void disFile();應該編寫為void disFile(){};

27.在ASP.NET中有Button控件myButton,要是單擊控件時,導航到其他頁面, 正確的代碼為( )。

a)private void myButton_Click(object sender, System.EventArgs e){Redirect(“”);}

b)private void myButton_Click(object sender, System.EventArgs e){Request.Redirect(“”);}

c)private void myButton_Click(object sender, System.EventArgs e){Reponse.Redirect(“”);}

d)private void myButton_Click(object sender, System.EventArgs e){Request.Redirect(“”);return true;}

28.XML文檔既包含數據同時也可包含( )。

a)元數據;

b)架構;

c)代碼;

d)圖片;

29.在C#中利用Socket進行網絡通信編程的壹般步驟是:建立Socket偵聽、()、利用Socket接收和發送數據。

a)建立Socket連接;

b)獲得端口號;

c)獲得IP地址;

d)獲得主機名;

30.聲明壹個委托public delegate int myCallBack(int x); 則用該委托產生的回調方法的原型應該是( )。

a)void myCallBack(int x) ;

b)int receive(int num) ;

c)string receive(int x) ;

d)不確定的;

二、判斷題,對的打√錯的打×(每小題2分,***20分)

1.( )在C#中,裝箱操作是將值類型轉化成引用類型。

2.( )接口中的成員不可以有訪問域修飾符,但可以有其它修飾符。

3.( )在C#中,索引器是專門用來訪問對象中的數組信息的。

4.( )在C#中,接口可以被多重繼承而類不能。

5.( )在C#中,int[][]是定義壹個int型的二維數組。

6.( )異常類對象均為System.Exception類的對象。

7.( ) 當窗體最小化後,再次還原成為活動窗體時將自動觸發Paint事件。

8.( ) ASP.NET中,使用驗證控件來驗證用戶輸入,要求用戶不可跳過該項輸入,並且用戶輸入值在0和1000之間,則適用RequiredFieldValidator和RangeValidator控件。

9.( ) 聲明委托實際上是聲明了壹個方法。

10.( ) 任何事物都是對象。

三、簡述題(每小題10分,***20分)

1.請簡述壹下用Socket進行同步通訊編程的詳細步驟

2. 比較ADO 與ADO.NET 的不同。

發表於 @ 2006年06月04日 5:50 PM | 評論 (1)

C#的題目

壹.填空題

1.c#中的三元運算符是_____?

2.當整數a賦值給壹個object對象時,整數a將會被_____?

3.類成員有_____種可訪問形式?

4.public static const int A=1;這段代碼有錯誤麽?是什麽?

5.float f=-123.567F;

int i=(int)f;

i的值現在是_____?

6.利用operator聲明且僅聲明了==,有什麽錯誤麽?

7.委托聲明的關鍵字是______?

8.用sealed修飾的類有什麽特點?

9.在Asp.net中所有的自定義用戶控件都必須繼承自________?

10.在.Net中所有可序列化的類都被標記為_____?

11.在.Net托管代碼中我們不用擔心內存漏洞,這是因為有了______?

12.下面的代碼中有什麽錯誤嗎?_______

using System;

class A

{

public virtual void F(){

Console.WriteLine("A.F");

}

}

abstract class B:A

{

public abstract override void F();

}

13.當類T只聲明了私有實例構造函數時,則在T的程序文本外部,______(可以 or 不可以)從T

派生出新的類,____(可以 or 不可以)直接創建T的任何實例。

14.下面這段代碼有錯誤麽?

switch (i){

case():

CaseZero();

break;

case 1:

CaseOne();

break;

case 2:

dufault;

CaseTwo();

break;

}

15.在.Net中,類System.Web.UI.Page 可以被繼承麽?

二.簡答題

1.在c#中using和new這兩個關鍵字有什麽意義,請寫出妳所知道的意義?

2.在下面的例子裏

using System;

class A

{

public A(){

PrintFields();

}

public virtual void PrintFields(){}

}

class B:A

{

int x=1;

int y;

public B(){

y=-1;

}

public override void PrintFields(){

Console.WriteLine("x={0},y={1}",x,y);

}

當使用new B()創建B的實例時,產生什麽輸出?

3.下面的例子中

using System;

class A

{

public static int X;

static A(){

X=B.Y+1;

}

}

class B

{

public static int Y=A.X+1;

static B(){}

static void Main(){

Console.WriteLine("X={0},Y={1}",A.X,B.Y);

}

}

產生的輸出結果是什麽?

4.談談類和結構的區別?

5.壹個長度為10000的字符串,通過隨機從a-z中抽取10000個字符組成。請用c#語言編寫主要程

序來實現。

6.對於這樣的壹個枚舉類型:

enum Color:byte{

Red,

Green,

Blue,

Orange

}

試寫壹段程序顯示出枚舉類型中定義的所有符號名稱以及它們對應的數值。

7.您了解設計模式麽?請列出您所知道的設計模式的名稱。

8.請在SQL Server中設計表來保存壹個樹狀結構的組織結構圖(假設結構圖中只有名稱這壹項內容

需要保存),如果我想查詢某壹職位下的所有職位,用壹個存儲過程來實現,妳有什麽思路?

9.什麽叫做SQL註入,如何防止?請舉例說明。

10.下面這段代碼輸出什麽?為什麽?

int i=5;

int j=5;

if (Object.ReferenceEquals(i,j))

Console.WriteLine("Equal");

else

Console.WriteLine("Not Equal");

1 ?:

2 裝箱

3 3種

4 const成員都是static所以應該去掉static

5 -123

6 要同時修改Equale和GetHash() ? 重載了"==" 就必須重載 "!="

7 delegate

8 不可被繼承

9 System.Web.UI.UserControl

10 [serializable]

11 gC

12 abstract override 是不可以壹起修飾

13 不可以,不可以

14 case():不行 default;

15 可以

1 Using 引入壹個名子空間,或在使用了壹個對像後自動調用其IDespose,New 實例化壹個對

像,或修飾壹個方法,表此方法完全重寫此方法,

2 X=1,Y=0

3 x=1,y=2

4 最大區別壹個是引用類型,壹個是值類型默認成員訪問為public是另外壹個區別

  • 上一篇:急性子蝸牛寫作文
  • 下一篇:數控外圓磨床怎麽使用調整?
  • copyright 2024編程學習大全網