一、選擇填空題(每空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語句( )正确地建立了一個與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,要是單擊控件時,導航到其他頁面http://www.abc.com, 正确的代碼為( )。
a)private void myButton_Click(object sender, System.EventArgs e){Redirect(“http://www.abc.com”);}
b)private void myButton_Click(object sender, System.EventArgs e){Request.Redirect(“http://www.abc.com”);}
c)private void myButton_Click(object sender, System.EventArgs e){Reponse.Redirect(“http://www.abc.com”);}
d)private void myButton_Click(object sender, System.EventArgs e){Request.Redirect(“http://www.abc.com”);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 的不同。
答案
選擇
1-5 acaab
6-10 dbcad
11-15 aabcb
16-20 ddbbc
21-25 dddad
26-30 (ab) c b a b
判斷
TFFTF TTTFT
簡答
一。簡述一下用Socket進行同步通訊程式設計的詳細步驟
1、在應用程式和遠端裝置中使用協定和網絡位址初始化套接字
2、在應用程式中通過指定端口和位址建立監聽
3、遠端裝置發出連接配接請求
4、應用程式接受連接配接産生通信scoket
5、應用程式和遠端裝置開始通訊(在通訊中應用程式将挂起直到通訊結束)
6、通訊結束,關閉應用程式和遠端裝置的Socket回收資源
二。ADO。NET相對于ADO等主要有什麼改進?
1:ado.net不依賴于ole db提供程式,而是使用.net托管提供的程式,
2:不使用com
3:不在支援動态遊标和伺服器端遊
4:,可以斷開connection而保留目前資料集可用
5:強類型轉換
6:xml支援