期末練習題及部分答案.docx_第1頁
期末練習題及部分答案.docx_第2頁
期末練習題及部分答案.docx_第3頁
期末練習題及部分答案.docx_第4頁
期末練習題及部分答案.docx_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

一、選擇題:(共20分,每小題2分)二、填空題/判斷題(共20分,每空2分)三、程序閱讀:(共10分,每小題5分)四、簡答題:(共30分,每題6分)五、程序設計:(共20分,每題10分)基本概念:接口相關,靜態(tài)相關,委托,索引,重載,抽象相關,繼承相關,一維、二維數(shù)組定義使用;構造函數(shù)相關;C#數(shù)據(jù)類型;一、 填空題1、面向對象的三個重要特性: (1) 、(2) 、(3) 。 2、While循環(huán)語句至少執(zhí)行(4) 次,dowhile語句至少執(zhí)行 (5) 次。3、 (6) 類是.NET中所有類型的基類。 4、當變量按引用存儲信息時,存儲的不是 (7) ,而是 (8) 。5、要將控件錨定到其容器的邊緣,應設置控件的 (9) 屬性。 6、 顯示模式窗體可以使用 (10) 方法。7、改變窗體的標題,需修改的窗體屬性是(11) 8、窗體的默認事件是 ( 12) 1、(1)繼承 (2)封裝 (3)多態(tài)2、(4)0 (5)13、(6)Object4、(7) 信息本身 (8)信息在內(nèi)存中的存儲位置5、(9)Anchor/錨定(Anchor)是指控件到窗體(或父容器)的邊緣距離保持不變;6、(10)Dialog7、11 Text8、12 load事件二、判斷題:(一) C#中一個類只能有一個基接口。(X )(二) 在C#中要在派生類中重新定義基類的虛函數(shù)必須在前面加override。 ( )(三) C#中允許使用一個委托對象同時調(diào)用多個方法。( )(四) 裝箱過程是隱式轉換過程。( )(五) 索引器的參數(shù)類型必須是整數(shù)型 。(X )/使用索引器來操作集合對象就如同使用數(shù)組一樣簡單(六) 索引的Get訪問器帶參數(shù),而屬性的Get訪問器不帶參數(shù)。( )/索引器一種支持參數(shù)的屬性(七) 靜態(tài)類中可以包含實例構造函數(shù)。(X )(八) C#中,接口成員不能添加任何訪問修飾符。()(九) 抽象類中所有的成員都無實現(xiàn)。(X )/抽象類中可以定義成員的實現(xiàn),但接口中不可以。(十) 命名空間允許嵌套。( )(十一) 索引可以是靜態(tài)成員。(X )/索引器必須為實例成員,屬性可以為靜態(tài)成員或實例成員(十二) 靜態(tài)字段在內(nèi)存中有多個備份。( x)/靜態(tài)字段被類的所有實例所共享,即此類的所有實例都訪問同一內(nèi)存地址。 所以該內(nèi)存位置的值變更的話,這種變更對所有的實例都可見三、簡答題:(一) 作為一個完整的事件處理系統(tǒng),其3大要素是什么,并簡要說明。 事件源:指能觸發(fā)事件的對象,有時又稱為事件的發(fā)送者或事件的發(fā)布者。 偵聽器:指能接收到事件消息的對象,Windows提供了基礎的實踐偵聽服務。 事件處理程序:當事件發(fā)生時對事件進行處理,又稱事件函數(shù)或事件方法。 (二)重載與覆蓋的區(qū)別。(4、override與重載的區(qū)別是什么?)(1)方法的覆蓋是子類和父類之間的關系,是垂直關系;方法的重載是同一個類中方法之間的關系,是水平關系。(2)覆蓋只能由一個方法,或只能由一對方法產(chǎn)生關系;方法的重載是多個方法之間的關系。(3)覆蓋要求參數(shù)列表相同;重載要求參數(shù)列表不同。(4)覆蓋關系中,調(diào)用那個方法體,是根據(jù)對象的類型(對像對應存儲空間類型)來決定;重載關系,是根據(jù)調(diào)用時的實參表與形參表來選擇方法體的。(二) c#常見的程序錯誤可歸結為哪3類。異常處理使用哪三種語句。c#常見的程序錯誤可歸結為3類:語法錯誤、運行期錯誤、邏輯錯誤,常處理:try-catch語句、finally語句、throw語句(四)VisualC#中類的成員包括哪些?(最少寫出6種)(1) 常量 (2) 域(字段) (3) 構造函數(shù) (4) 析構函數(shù) (5) 方法 (6) 屬性 (7) 事件 (8) 索引 (9) 操作符 (10) 類型 (五)C#提供了集合類,列舉3個常用的集合類。Array數(shù)組、List 列表、ArrayList動態(tài)數(shù)組等(六)什么是類的多態(tài)性,C#中如何實現(xiàn)行為的多態(tài)。(七)說明下列單詞在C#中的作用:using、namespace、class、this。using 語句允許程序員指定使用資源的對象應當何時釋放資源。namespace既“命名空間”,也稱“名稱空間” VS.NET中的各種語言使用的一種代碼組織的形式 通過名稱空間來分類,區(qū)別不同的代碼功能 同時是VS.NET中所有類的完全名稱的一部分。class是定義類的關鍵字,C+中也可以使用struct定義類。兩者區(qū)別是,用class定義的類,如果數(shù)據(jù)成員或成員函數(shù)沒有說明則默認為private(私有)的,而用struct定義的,默認為public(公共)的。this關鍵字引用當前對象實例的成員。(八)簡述枚舉型、類、數(shù)組這三種數(shù)據(jù)類型的區(qū)別。枚舉型:通過預定義列出所有值的標識符來定義一個有序集合,這些值的次序和枚舉類型說明中的標識符的次序識一致的。類是 C# 中功能最為強大的數(shù)據(jù)類型。像結構一樣,類也定義了數(shù)據(jù)類型的數(shù)據(jù)和行為。然后,程序員可以創(chuàng)建作為此類的實例的對象。與結構不同,類支持繼承,而繼承是面向對象編程的基礎部分。數(shù)組是一種數(shù)據(jù)結構,它包含若干相同類型的變量。數(shù)組是使用類型聲明的:type arrayName;(九)簡述抽象類與接口,并進行比較。(十)什么是委托?委托有哪些特點?委托是一種引用方法的類型。一旦為委托分配了方法,委托將與該方法具有完全相同的行為。委托方法的使用可以像其他任何方法一樣,具有參數(shù)和返回值。委托類似于 C+ 函數(shù)指針,但它是類型安全的。委托允許將方法作為參數(shù)進行傳遞。委托可用于定義回調(diào)方法。委托可以鏈接在一起;例如,可以對一個事件調(diào)用多個方法。方法不需要與委托簽名精確匹配。(十二)常見的用戶界面有幾類?對話框應用程序、單文檔界面應用程序SDI和多文檔應用程序MDI 四、程序設計: (一)編寫代碼,定義一個基類MyClass,其中包含虛擬方法GetString()。這個方法應返回有儲在受保護字段myString中的字符串,該字段可以通過只寫公共屬性ConString 來訪問。 public class MyClass private string myString; public string ConString get return myString; public virtual string GetString() return myString; (二) 從類MyCalss 中派生一個類MyDClass 。重寫GetString()方法。使用該方法的基類執(zhí)行代碼從基類中返回一個字符串,但在返回的字符串中添加文本“(output from derivedclass)”. public class MyDClass : MyClass public override string GetString() return base.GetString() + (output from derivedclass); (三)設計一個Student類用來保存學生的信息,包括學生的姓名、性別、年齡信息。要求:1.定義構造函數(shù)初始化類的實例(姓名、性別賦值后不可更改)。2.要求對年齡定義私有成員和公有屬性,并且屬性為可讀寫屬性。3.要求定義方法Ansewr()返回包含學生信息的字符串。public class Studentprivate readonly string name; private int age; private readonly char sex;public Student(string name,int age, char sex) =name; this.age=age;this.sex=sex; public int Age Getreturn this.age;Setthis.age=valule;pubilc string Answer() string result=string.Format(“姓名:0,年齡:1,性別:2”,, this.age, this.sex);return string; (四) 設計一個Student類用來保存學生的信息,此類需要包括學生的姓名、年齡、性別。要求:1通過構造函數(shù)初始化類的實例(構造函數(shù)要求重載)2要求分別對前面包含的信息定義私有成員和公有屬性,并且屬性為可讀寫屬性。3要求定義方法show()用來輸出學生的各項信息。public class Studentprivate string name;private int age;private string sex; public Student () public Student (string name,int age,string sex)=name;this. age =age;this.sex=sex; public string NameGetreturn ;S=value;public int AgeGetreturn this.age;Setthis.age=valule;public string SexGetreturn this.sex;Setthis.sex=value; pubilc void show()Console.writeline(“姓名:0,年齡:1,性別:2”,, this.age, this.sex); (五)現(xiàn)在有如圖所示的一個計算器可以完成加、減、乘、除和取余數(shù)運算,四個textbox的名稱從上至下分別為textBox1、textBox2、textBox3、textBox4。編寫 “計算”按鈕的Click事件處理方法使其完成計算的功能。private void button1_click(object sender, System.Eventargs e) private void button1_click(object sender,System.Eventargs e) float op1,op2;char Operator; op1=Single.Parse(textBox1.Text );op2=Single.Parse(textBox3.Text);Operator=char.Parse(textBox2.Text); switch(Operator)case +:op1+=op2;break;case -:op1-=op2;break;case *:op1*=op2;break;case /:op1/=op2;break;case %:op1%=op2;break; default:MessageBox.Show(輸入有錯誤!);break; textBox4.Text =op1.ToString(); 五、分析程序運行結果(一)(二) (三)using System;class Test public int x; static public int y; public Test(int x) this.x = x; static Test() y = 1; class TestStaticstatic void Main() Test t=new Test(1); Console.WriteLine(0,1,t.x,Test.y);t.x+;Test.y+;Console.WriteLine(0,1, t.x, Test.y);t = new Test(0); Console.WriteLine(0,1, t.x, Test.y);(四)下

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論