C程序設計語言期末考試題A有答案_第1頁
C程序設計語言期末考試題A有答案_第2頁
C程序設計語言期末考試題A有答案_第3頁
C程序設計語言期末考試題A有答案_第4頁
C程序設計語言期末考試題A有答案_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、期末試題一一C#程序設計語言(A卷)題號一一三四總分評卷教師分數(shù)說明:本試卷共四大題,試卷滿分100分,考試時間120分鐘。一.判斷題(每題1分,共10分,正確的打,錯誤的打X)題號12345678910答案XVXXVXVVVV()4.派生類可以繼承基類的成員,以及方法的實現(xiàn);派生的接口繼承了父接口的成員方法,并且也繼承父接口方法的實現(xiàn)。()5.當創(chuàng)建派生類對象時,先執(zhí)行基類的構造函數(shù),后執(zhí)行派生類的構造函數(shù)。()6.隱式類型轉換就是不需要聲明目標類型就可以進行的轉換?()7.如果基類沒有默認的構造函數(shù),那么其派生類構造函數(shù)必須通過base關鍵字來調用基類的構造函數(shù)。()8.在C#中在派生類中

2、重新定義基類類的虛函數(shù)必須在前面加override。()9. C#中方法的參數(shù)中輸出型參數(shù)(out)的實參在傳遞給形參前,不需要明確賦值,但需在方法返回前對該參數(shù)明確賦值。()10.在類中可以重載構造函數(shù),C#會根據(jù)參數(shù)匹配原則來選擇執(zhí)行合適的構造函數(shù)。()1. ”+、-、*、/、% +、-均屬于二元運算符。()2.字符串類型屬性引用類型。()3. Visual Studio控件的屬性窗口中,按鈕“ A->Z”點擊后,屬性列表會先按照功能分類排列屬性后在每個單元中以名稱排序。.單項選擇題(每題2分,共40分)(說明:每題有且僅有一個正確答案,請將正確答案填入下表)題號1234567891

3、0答案ABBBCDDABC題號11121314151617181920答案CDA:C_ CBAAAD1. C蝌序設計語言屬于什么類型的編程語言:aA.高級語言B .自然語言 C .機器語言D .匯編語言2. 如有int a=11;則表達式(a+*1/3 )的值是:bA. 0 B . 3 C . 4 D . 123. 類的字段和方法的默認訪問修飾符是:bA. public B . private C . protected D . internal4. 對于在代碼中經(jīng)常要用到的且不會改變的值,可以將其聲明為常量。如圓周率PI始終為3.14?,F(xiàn)在要聲明一個名為 PI的圓周率常量,下面哪段代碼是正確

4、的?bA.const float PI;PI = 3.14f; B.const float PI = 3.14f;C.float const PI;PI = 3.14f; D.float const PI = 3.14f;5. 請問經(jīng)過表達式a=3+3>5?0:1 的運算,變量a 的最終值是什么?。A 6 B 1 C 0 D true6. 下列語句是MyClass 的一部分,obj 是 MyClass 的一個對象。private class subclass public int data;void change(ref int x) x=1;public void test()subC

5、lass s=new subClass();s.data=100;change(ref s.data);Console.WriteLine(s.data);則調用 obj.test() 后??刂婆_輸出(d) 。A. 100 B. 101 C. 0 D. 17. 用戶自定義的異常類應該從哪個類中繼承(d)A. System.ArgumentExceptionB. System.IO.IOExceptionC. System.SystemExceptionD. System.ApplicationException8. 下面有關虛方法的描述正確的是(a ) 。A. 虛方法能在程序運行時,動態(tài)確定要

6、調用的方法,因而比非虛方法更靈活,更方便B. 在定義虛方法時,基類和派生類的方法定義語句中都要帶上virtual 修飾符C.重寫基類的虛方法時,為消除隱藏基類成員的警告,需要帶上 new修飾符D. 在重寫虛方法時,需要同時帶上override 和 virtual 修飾符9. 下列語句聲明了一個委托:public delegate int myCallBack(int x); 則用該委托產生的回調方法的原型應該是:bA.void receive (int x) B.int receive(int num)C.int receive( )D.不確定的10. C#中TestClass為一自定義類,其

7、中有以下屬性定義public void Property 使用以下語句創(chuàng)建了該類的對象,并使變量obj 引用該對象:TestClass obj=new TestClass();那么,可通過什么方式訪問類TestClass 的 Property 屬性 (c)A. TestClass.Progerty; B. TestClass. Property();C. obj. Property; D. obj. Property();11. 已知類Base、 MyClass 的定義如下class Base public void Hello() ");/ 先基后派System.Console.W

8、riteLine("Hello in Baseclass Derived : Basepublic void Hello() System.Console.WriteLine("Hello in Derived ! ");則下列語句在控制臺中的輸出結果為_c_。Derived x = new Derived();x.Hello();A. Hello in Base!B. Hello in Derived!C. Hello in Base!D. Hello in Derived!Hello in Derived !Hello in Base!12. 下列關于接口的說

9、法中,哪個選項是正確的?(d)A. 一個類可以有多個基類和多個基接口B. 抽象類和接口都不能被實例化C. 抽象類和接口都可以對成員方法進行實現(xiàn)D. 派生類可以不實現(xiàn)抽象基類的抽象方法,但必須實現(xiàn)繼承的接口的方法13. 下列關于構造函數(shù)的描述中,哪個選項是正確的?(a)A. 構造函數(shù)必須與類名相同B. 構造函數(shù)不可以用private 修飾C. 構造函數(shù)不能帶參數(shù)D.構造函數(shù)可以聲明返回類型14. 引用數(shù)組元素時, 數(shù)組下標的數(shù)據(jù)類型可以允許哪項類型?(c)A. 整型常量B.整型表達式C. 整型常量或整型表達式D. 任何類型的表達式15. 以下類 MyClass 的屬性 count 屬于_c_屬性

10、。class MyClassint i;int count get return i; A. 只讀B. 只寫C. 可讀寫D. 不可讀不可寫16. 要讓用戶選擇和瀏覽要打開的文件,應使用什么對話框?(b)A. FileDialogB. OpenFileDialoC. SaveFileDialo D. FolderBrowserDialog17. 在 Visual Studio 2005 中,假設你正在單步調試某個應用程序。程序從入口開始,調用某個私有方法將產生異?!,F(xiàn)在代碼運行到如圖所示位置,應該使用下面哪種方式進一步調試?ajjCan3ftleApplication2. ProgramjVHa

11、in Ctring args)B usiog System:using Systemi. CollectioiLS. Generic;3: L using System Text:4e -'5:b narn:spacg ConsolsApplic&tien2©h 1Frogranstatic void Mam(5tring ar5sj1011121314“調用此方法會產生異常 pdSom0thingO :privatestatic void 口。Something 0A.使用逐語句調試C.跳出調試D.18. .NET Framework 2.0B.使用逐過程調試停止調

12、試中,處理異常是很有用的功能。一個之對應。在多個catch塊中,下面哪個異常應該最后捕獲?try代碼塊可以有多個catch塊于aA. System.Exception 類C. System.ApplicationExceptionB. System.SystemException類類 D. System.StackOverflowException19.在二維坐標系中,通常需要保存一組點的坐標。使用二維數(shù)組是一個解決方案。下面哪段代 碼正確初始化了 2行2列的整數(shù)二維數(shù)組? aA. int, array = new int2,2;C. int, array = new int22;20.已經(jīng)定

13、義了一個 Season枚舉, 定義一個名為 currentSeason dB. int口口 array = new int22;D. int叩 array = new int2,2;它有 4 個成員 Spring , Summer Autumn, Winter。現(xiàn)在需要 的Season枚舉,并將其賦值為Spring,應使用下面哪段代碼?A. Season currentSeason = Spring; B. currentSeason = Spring;C. currentSeason = Season.Spring; D. Season currentSeason = Season.Spri

14、ng .簡答題(每題5分,共10分)1.類與對象有什么區(qū)別?答:類是用來描述某種具有相同屬性和行為的事物,對象是類的一種具體表現(xiàn)。2.什么叫多態(tài)性,在C黜言中如何實現(xiàn)多態(tài)? 答:多態(tài)性是指一段程序能夠處理多種類型對象的能力。四.綜合題(共40分)1.下面這段程序要完成的功能是:從輸入的字符串中找出小寫字母并輸出到終端。請檢查下列代碼,找出所有錯誤的代碼,并寫出該行完整的正確代碼。(4分)1.2.3.using System;public class Program 4. static void Main(string 口 args)5. 6. string inputString=Consol

15、e.ReadLine();7. string lowerCase=string.Empty;8. foreach (char ch in inputString)9. if (ch>='a'|ch<='z')10. lowerCase+=ch.ToString;11. Console.WriteLine("小寫字母有:"+lowerCase);12. 13. 更正以下兩句: 9. if (ch>='a'&&ch<='z') 10. lowerCase+=ch.ToStri

16、ng();2.下述代碼用于重寫Message方法。請分析下述代碼,并更正錯誤代碼行。 (4分)1. interface IMsg 2. 3.void Message。;4. 5. public class MyClass : IMsg6. 7. public virtual void Message。8. 9. Console.WriteLine("MyClass");10. 11. 12. public class MyDerivedClass : MyClass13. 14. public voidMessage()15. 16. Console.WriteLine(&

17、quot;MyDerivedClass");17. 18. 第14行:更正為:public override void Message。3.下面代碼功能是對數(shù)組進行遍歷,請分析下列代碼段并在空白行補全C#代碼。(4分)static void Main(string口 argz) string 口 myString="windows","form","dialog" foreach( (1)Console.WriteLine(str); (1): string str in myString4.下面程序中兩個方法需要實現(xiàn)的功能

18、是:int數(shù)組相加,即數(shù)組中的每項相加,以及string類型的相加,即把一串字符串接到另一串字符串后面。請分析下列代碼段,并在空白行補全visual C#代碼。(6分)(1int result=new intarray1.Length ;for (int i=0;i<array1.Length ;i+)resulti =array1i +array2i;return result;(2) string spaceStr = " ", result = null;result = str1 + spaceStr + str2;return result;static v

19、oid Main(string口 arges)int a = 1,2, 3, b = 4, 5, 6 ;int sumArray = new int3;string str1 = "visual", str2 = "studio"string sumString = null;sumArray = Add(a, b);sumString = Add(str1, str2);1, static int口 Add(int口 arrayl, int口 array2)2, static string Add(string strl, string str2)5

20、.下列程序段的作用是對字符串數(shù)組myArray進行排序后輸出"Ruby Mark Norman Kinger請補全代碼完成該功能。(6分)static void Main(string 口 args) string myArray = new string "Kinger", "Norman", "Ruby", "Mark" ;Sort(myArray);foreach (string str in myArray)Console.Write(str + "");public stat

21、ic void Sort(string array)string str;for (int j = 0; j < array.Length - 2; j+)for (int i = 0; i < array.Length - j - 1; i+)str = arrayi; arrayi = arrayi + 1;arrayi + 1 = str; 6 .比爾在教他的女兒面向對象的知識。他寫了一個類Bill和一個接口 IPrintname?,F(xiàn)在他希望女兒能夠寫一個類Jennifer,繼承自Bill ,重寫基類函數(shù) WhoAmI(),將輸出改為"Jennifer"并

22、且實現(xiàn)接口 IPrintname,該接口只有一個方法Print,這個方法的實現(xiàn)會在控制臺打印調用WhoAmI 函數(shù)的結果(即:"Jennifer")。(6 分)public class Bill (public virtual string WhoAmI() (return "Bill" )public interface IPrintname(void Print();) public class Jennifer : Bill , IPrintname(public override string WhoAmI() (return "Jen

23、nifer" )public void Print() (Console .WriteLine(WhoAmI();) )7 .下列Shape類是一個表示形狀的抽象類,Area()為求圖形面積的函數(shù), Total()則是一個通用的用求不同形狀的圖形面積總和的函數(shù)。請從 Shape類派生矩形類(Rectangle)、圓形類(Circle),給出具體的求面積函數(shù)。并在主函數(shù)中寫出計算如圖所示圖形面積的語句。(共10分)namespace testclass Programstatic void Main( string 口 args) static double Total( shape s) double sum = 0.0;int n = s.Length;for ( int i = 0; i < n; i+)sum += si.area();return sum;abstract class Shapepublic a

溫馨提示

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

評論

0/150

提交評論