可做奧鵬院校所有作業(yè),畢業(yè)論文,咨詢請?zhí)砑観Q:3230981406 微信:aopopenfd777
東 北 大 學(xué) 繼 續(xù) 教 育 學(xué) 院
軟件設(shè)計模式 試 卷(作業(yè)考核 線上) B 卷
學(xué)習(xí)中心: 院校學(xué)號: 姓名
?。ü?nbsp; 8 頁)
總分
題號
一
二
三
四
五
六
七
八
九
十
得分
一:單選題(共40分,20小題,更多答案下載:(www.)2分。請將答案填入下表)
題號
1
2
3
4
5
6
7
8
9
10
答案
題號
11
12
13
14
15
16
17
18
19
20
答案
1. 以下標(biāo)識符中,正確的是:
A、_total B 3abc C while D class
2. 在c#程序中,入口函數(shù)的正確聲明為:
A. static int main(){…..}
B. static void Main(){……}
C. static void main(){……}
D. void Main(){……}
3. C#中MyClass 為一自定義類,其中有以下方法定義public void Hello(){..}使用以下語句創(chuàng)建了該類的對象,并使變量obj 引用該對象:MyClass obj = new MyClass();那么,可如何訪問類MyClass 的Hello 方法?
A. obj.Hello();
B. obj::Hello();
C. MyClass.Hello();
D. MyClass::Hello();
4. 在C#中,表示一個字符串的變量應(yīng)使用以下哪條語句定義?
A. CString str;
B. string str;
C. Dim str as string
D. char * str;
5. 結(jié)構(gòu)化程序設(shè)計的3種結(jié)構(gòu)是:
A. 順序結(jié)構(gòu)、if結(jié)構(gòu)、for結(jié)構(gòu)
B. if結(jié)構(gòu)、if…else結(jié)構(gòu)、else if結(jié)構(gòu)
C. while結(jié)構(gòu)、do…while結(jié)構(gòu)、foreach結(jié)構(gòu)
D. 順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
6. 能正確表示邏輯關(guān)系“a>=10 或a<=0”的C#語言表達式是:
A. a>=10 or a<=0
B. a>=10|a<=0
C. a>=10&&a<=0
D. a>=10||a<=0
7. 分析下列C#語句,注意類MyClass 沒有訪問修飾符:
namespace ClassLibrary1
{
class MyClass
{
public class subclass
{
int i;
}
}
}
若必須為類MyClass 添加訪問修飾符,并使MyClass 的可訪問域保持不變,則應(yīng)選擇:
A. private
B. protected
C. internal
D. public
8. 在類的外部可以被訪問的成員是:
A. public成員 B. private成員 C. protected成員 D. protected internal成員
9. 在定義類時,如果希望類的某個方法能夠在派生類中進一步進行改進,以處理不同的派生類的需要,則應(yīng)將該方法聲明成:
A. sealed 方法
B. public 方法
C. visual 方法
D. override 方法
10. C#中,回車字符對應(yīng)的轉(zhuǎn)義字符為:
A. \r
B. \f
C. \n
D. \a
11. 判斷下列類MyClass 的定義中哪些是合法的抽象類?
A. abstract class MyClass { public abstract int getCount(); }
B. abstract class MyClass { abstract int getCount(); }
C. private abstract class MyClass { abstract int getCount(); }
D. sealed abstract class MyClass { abstract int getCount(); }
12. 已知a、b、c的值分別是4、5、6,執(zhí)行下面的程序段后,判斷變量n的值為:
int a,b,c,n;
if (c < b)
n = a + b + c;
else if (a + b < c)
n = c - a - b;
else
n = a + b;
A. 3 B. -3 C. 9 D. 15
13. MyClass為一個自定義的類,則下列語句創(chuàng)建了多少個類MyClass的對象?
MyClass[ , ] myArray = new MyClass[2][3];
A. 0
B. 2
C. 3
D. 6
14. 下面是幾條動態(tài)初始化二維數(shù)組的語句,指出其中正確的:
A. int arr5[][]=new int[4,5];
B. int[][] arr6 = new int[4, 5];
C. int arr7[,]=new int[4,5];
D. int[,] arr8=new int[4,5];
15. 下面有關(guān)析構(gòu)函數(shù)的說法中,不正確的是:
A. 析構(gòu)函數(shù)中不可以包含return語句
B. 一個類中只能有一個析構(gòu)函數(shù)
C. 析構(gòu)函數(shù)在對象被撤銷時,被自動調(diào)用
D. 用戶可以定義有參析構(gòu)函數(shù)
16. 下列說法哪個正確?
A. 不需要定義類,就能創(chuàng)建對象
B. 屬性可以定義為抽象的
C. 對象中必須有屬性和方法
D. 常量不能作為類成員
17. 下面有關(guān)靜態(tài)方法的描述中,正確的是:
A. 靜態(tài)方法屬于類,不屬于實例
B. 靜態(tài)方法可以直接用類名調(diào)用
C. 靜態(tài)方法中,可以訪問非靜態(tài)的局部變量
D. 靜態(tài)方法中,可以訪問靜態(tài)的變量
18. 以下描述錯誤的是:
A. 在C++中支持抽象類,但在C#中不支持抽象類。
B. C++中可在頭文件中聲明類的成員,而在CPP文件中定義類的成員;在C#中沒有頭文件并且在同一處聲明和定義類的成員。
C. 在C#中可使用 new 修飾符顯式隱藏從基類繼承的成員。
D. 在C#中要在派生類中重新定義基類的虛函數(shù)必須在前面加Override。
19. 下列關(guān)于構(gòu)造函數(shù)的描述正確的是:
A. 構(gòu)造函數(shù)可以聲明返回類型。
B. 構(gòu)造函數(shù)不可以用private修飾
C. 構(gòu)造函數(shù)必須與類名相同
D. 構(gòu)造函數(shù)不能帶參數(shù)
20. 變量x的值為25,要輸出x的值,下列正確的語句是:
A. System.Console.writeline(“x”)
B. System.Console.WriteLine(“x”)
C. System.Console.writeline(“x={0}”,x)
D. System.Console.writeline(“x={x}”)
二:答案來源:(www.)(共20分,20小題,更多答案下載:(www.)1分。請將答案√或×填入下表)
題號
1
2
3
4
5
6
7
8
9
10
答案
題號
11
12
13
14
15
16
17
18
19
20
答案
1. 軟件危機是開發(fā)軟件的開發(fā)工具功能不強造成的。( )
2. 結(jié)構(gòu)化程序設(shè)計的3種基本結(jié)構(gòu)是順序、循環(huán)和選擇。( )
3. 面向數(shù)據(jù)流的設(shè)計以面向?qū)ο蠓治鲭A段的數(shù)據(jù)流圖為基礎(chǔ)。( )
4. 軟件設(shè)計主要是要求功能強大,對于說明文檔的要求則可以適當(dāng)放松。( )
5. 軟件測試方法主要白盒測試和黑盒測試兩種。( )
6. 螺旋模型包括制定計劃、概要設(shè)計,詳細設(shè)計和工程實施四個主要部分。( )
7. 面向?qū)ο蠓椒ㄊ菑乃惴槌霭l(fā)點來構(gòu)造系統(tǒng)。( )
8. 在面向?qū)ο蠓椒ㄖ?,封裝使得外界無法存取對象的內(nèi)部信息。( )
9. 面向過程方法的缺點是過程和數(shù)據(jù)結(jié)合的過于緊密。( )
10. 面向?qū)ο蟪绦蛟O(shè)計應(yīng)該遵循低內(nèi)聚、高耦合的原則。( )
11. 消息可以用順序圖和協(xié)作圖這兩種圖來表示。( )
12. 狀態(tài)圖、順序圖、協(xié)作圖和部署圖屬于動態(tài)建模機制。( )
13. 順序圖描述系統(tǒng)中對象間通過消息進行的交互,強調(diào)消息在時間軸上的先后順序。( )
14. 提倡設(shè)計模式的根本原因是增強代碼復(fù)用,增加可維護性。( )
15. 里氏代換原則的本質(zhì)是在同一個繼承體系中的對象應(yīng)該有共同的行為特征。( )
16. 工廠方法是抽象工廠模式的擴展。( )
17. 提倡設(shè)計模式的根本原因是增強代碼復(fù)用,增加可維護性。( )
18. 具有抽象方法的類必須聲明為abstract. ( )
19. 當(dāng)創(chuàng)建派生類對象時,先執(zhí)行基類的構(gòu)造函數(shù),后執(zhí)行派生類的構(gòu)造函數(shù)。( )
20. 虛函數(shù)是可由子類繼承并重寫的函數(shù)。( )
三:更多答案下載:(www.)(共25分,5小題,更多答案下載:(www.)5分。)
1. 試簡述瀑布模型。
2. 設(shè)計模式的基本要素有哪些?
3. 什么是創(chuàng)建型設(shè)計模式,它的目的是什么?
4. 結(jié)構(gòu)型模式的功能有哪些?
5. 構(gòu)造函數(shù)有哪些特殊性?
四:綜合題(共15分)
1. 試舉一個例子并設(shè)計抽象工廠模式的UML結(jié)構(gòu)圖(7分)
2. 定義一個抽象的運動員(Player)基類,具有抽象方法Train方法。然后以該類為基類,派生出BasketballPlayer、FootballPlayer等類。(8分)
1
課程名稱: 軟件設(shè)計模式