版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
引言
復(fù)習(xí)題
1.什么是程序設(shè)計(jì)?
答:
計(jì)算機(jī)程序設(shè)計(jì)又稱為編程(programming),是一門設(shè)計(jì)和編寫計(jì)算機(jī)程序的科學(xué)和藝術(shù)。
程序是程序設(shè)計(jì)中最基本的概念,也是軟件中最基本的概念。程序是計(jì)算任務(wù)的處理對(duì)象
和處理規(guī)則的描述。所謂計(jì)算任務(wù)是指所有通過計(jì)算來解決實(shí)際問題的任務(wù)。處理對(duì)象是數(shù)據(jù),
如數(shù)字、文字和圖像等。處理規(guī)則一般指處理動(dòng)作和步驟。在低級(jí)語言中,程序是一組指令和
相關(guān)的數(shù)據(jù)。在高級(jí)語言中,程序一般是一組說明和語句,它包括了算法和數(shù)據(jù)結(jié)構(gòu)。程序設(shè)
計(jì)就是為計(jì)算機(jī)設(shè)計(jì)和編寫程序,使其按照人所規(guī)定的算法對(duì)數(shù)據(jù)進(jìn)行處理。通常程序設(shè)計(jì)包
括了問題建模、算法設(shè)計(jì)、編寫代碼和編譯調(diào)試等過程。
2.當(dāng)今的計(jì)算機(jī)是基于什么模型?
答:
現(xiàn)代計(jì)算機(jī)都是基于馮?諾伊曼模型的。此模型著眼于計(jì)算機(jī)的內(nèi)部結(jié)構(gòu),定義了處理機(jī)的
運(yùn)行過程。該模型把計(jì)算機(jī)分為四個(gè)子系統(tǒng):存儲(chǔ)器、算術(shù)/邏輯單元、控制單元和輸入/輸出單
兀。
3.為什么不稱計(jì)算機(jī)為數(shù)據(jù)處理器?
答:
數(shù)據(jù)處理器??梢哉J(rèn)為是一個(gè)接受輸入數(shù)據(jù),處理數(shù)據(jù),產(chǎn)生輸出數(shù)據(jù)的黑盒。盡管這個(gè)
模型能夠體現(xiàn)現(xiàn)代計(jì)算機(jī)的功能,但是它的定義還是太狹窄。這個(gè)模型并沒有說明它處理的類
型以及是否可以處理一種以上的類型。換句話說,它并沒有清楚的說明一個(gè)基于這個(gè)模型的機(jī)
器能夠完成操作的類型和數(shù)量。它是專用機(jī)器還是通用機(jī)器呢?這種模型可以表示為一種設(shè)計(jì)
用來完成特定任務(wù)的專用計(jì)算機(jī)(或者處理器),比如用來控制建筑物溫度或汽車油料使用。但
計(jì)算機(jī)作為一個(gè)當(dāng)今使用的術(shù)語,是一種通用的機(jī)器。它可以完成各種不同的工作。
4.你所知道的程序設(shè)計(jì)語言有哪些?你知道它們有什么不同特點(diǎn)嗎?
(答案略)
5.位模式是如何表示一個(gè)構(gòu)成文本的語言符號(hào)的?
答
所謂位(bit,binarydigit的縮寫)是存儲(chǔ)在計(jì)算機(jī)中的最小單位;它是()或1。位代表設(shè)
備的某一狀態(tài),這些設(shè)備只能處于兩種狀態(tài)中的某一種狀態(tài)。計(jì)算機(jī)存儲(chǔ)器并不知道所存儲(chǔ)的
位模式是表示哪種類型的數(shù)據(jù)。實(shí)際上計(jì)算機(jī)存儲(chǔ)器僅僅將數(shù)據(jù)以位模式存儲(chǔ)。至于解釋位模
式是數(shù)字類型、文本類型、或其它的數(shù)據(jù)類型,則是由輸入/輸出設(shè)備或程序的完成。換句話說,
當(dāng)數(shù)據(jù)輸入計(jì)算機(jī)時(shí),它們被編碼,當(dāng)呈現(xiàn)給用戶時(shí),它們被解碼。
位模式可以表示任何一個(gè)構(gòu)成文本的語言符號(hào)。在一種語言中,位模式到底需要多少位來
表示一個(gè)文本符號(hào)主要取決于該語言集中到底有多少不同的文本符號(hào)。例如,如果要?jiǎng)?chuàng)建的某
個(gè)虛構(gòu)的語言僅僅使用大寫的英文字母,則只需要26個(gè)符號(hào)。相應(yīng)的這種語言的位模式則至少
需要表示26個(gè)符號(hào)。對(duì)另一種語言,如中文,可能需要更多的符號(hào)。在一種語言中,表示某一
符號(hào)的位模式的長度取決于該語言中所使用的符號(hào)的數(shù)量。更多的符號(hào)意味著更長的位模式。
6.計(jì)算機(jī)程序設(shè)計(jì)語言是如何分類的?
答:
程序設(shè)計(jì)語言可劃分為低級(jí)語言、中級(jí)語言和高級(jí)語言。低級(jí)語言或稱機(jī)器語言,是程序
設(shè)計(jì)語言中最基礎(chǔ)的類型,能被計(jì)算機(jī)直接理解。機(jī)器語言的區(qū)別取決于制造商和計(jì)算機(jī)的型
號(hào)。高級(jí)語言是在計(jì)算機(jī)能夠理解和處理之前必須首先翻譯成機(jī)器語言的程序設(shè)計(jì)語言。C、
C++、Pascal和FORTRAN都是高級(jí)語言的例子。匯編語言是中級(jí)語言,非常接近于機(jī)器語言,
沒有其他高級(jí)語言所表現(xiàn)出的語言復(fù)雜程度,運(yùn)行時(shí)仍然得先翻譯成機(jī)器語言。
7.C#是什么?
答:
C#(發(fā)音為:Csharp)是Microsoft公司開發(fā)的一種新的語言,也是.NET公用語言運(yùn)行環(huán)
境的內(nèi)置語言。它完美的結(jié)合了C/C++的強(qiáng)大功能、Java的面向?qū)ο筇卣骱蚔isualBasic的易用
性,從而構(gòu)成一種類型安全的、簡(jiǎn)單的面向?qū)ο蟮木幊陶Z言。
8.C#的集成開發(fā)環(huán)境包括那些組成部分?
答:
C#的集成開發(fā)環(huán)境主要由這幾部分組成:通用語言運(yùn)行時(shí)CLR(CommonLanguage
Runtime),它是整個(gè)開發(fā)框架的基礎(chǔ);由CLR所提供的一組基礎(chǔ)類庫;在開發(fā)技術(shù)方面,C#
的集成開發(fā)環(huán)境提供了全新的數(shù)據(jù)庫訪問技術(shù)ADO.NET,以及網(wǎng)絡(luò)應(yīng)用開發(fā)技術(shù)ASP.NET和
Windows編程技術(shù)WinFormso
9.簡(jiǎn)述程序設(shè)計(jì)的過程。
答:
程序的設(shè)計(jì)過程包括:?jiǎn)栴}建模、算法設(shè)計(jì)、編寫代碼、編譯調(diào)試。
程序?qū)⒁詳?shù)據(jù)處理的方式解決客觀世界中的問題,因此在程序設(shè)計(jì)之初,首先應(yīng)該將實(shí)際
問題抽象成一個(gè)求解模型,然后為該模型設(shè)計(jì)和制定算法。通過問題建模,可以清楚地描述各
種概念、已知條件、所求結(jié)果,以及已知條件與所求結(jié)果之間的聯(lián)系等各方面的信息。模型和
算法的結(jié)合將給出問題的解決方案。
具體的解決方案確定后,需要對(duì)所采用的算法進(jìn)行描述,算法的初步描述可以采用自然語
言方式,然后逐步將其轉(zhuǎn)化為程序流程圖或其他直觀方式。這些描述方式比較簡(jiǎn)單明確,能夠
比較明顯地展示程序設(shè)計(jì)思想,是進(jìn)行程序調(diào)試的重要參考。
使用計(jì)算機(jī)系統(tǒng)提供的某種程序設(shè)計(jì)語言,根據(jù)上述算法描述,將已設(shè)計(jì)好的算法表達(dá)出
來,使得非形式化的算法轉(zhuǎn)變?yōu)樾问交挠沙绦蛟O(shè)計(jì)語言表達(dá)的算法,這個(gè)過程稱為程序編碼。
程序設(shè)計(jì)者可以通過常用的開發(fā)工具(如Java、VisualBasic等)依據(jù)程序設(shè)計(jì)語言的語法
規(guī)則編寫程序,并將源代碼編譯成可執(zhí)行程序。由于很少能保證程序第一次就能夠正確運(yùn)行,
所以程序設(shè)計(jì)時(shí)經(jīng)常需要使用調(diào)試程序來幫助查找程序錯(cuò)誤,解決程序運(yùn)行中存在的問題。調(diào)
試程序能夠在運(yùn)行的程序中檢測(cè)到一個(gè)事件,并向程序員指出該事件在程序由哪條代碼的觸發(fā)。
只有編譯調(diào)試成功了,才完成了程序的設(shè)計(jì)過程。
測(cè)試題
10.以下關(guān)于計(jì)算機(jī)程序的描述不正確的是—。
A、計(jì)算機(jī)程序是指按照時(shí)間順序依次安排的計(jì)算機(jī)工作步驟。
B、簡(jiǎn)單地講,計(jì)算機(jī)程序也可以表示成:算法+數(shù)據(jù)結(jié)構(gòu)。
C、計(jì)算機(jī)程序是對(duì)計(jì)算步驟的編排和優(yōu)化。
D、計(jì)算機(jī)程序是計(jì)算任務(wù)的處理對(duì)象和處理規(guī)則的描述。
答案:C
(提示:計(jì)算機(jī)程序是對(duì)計(jì)算步驟的編排,但不一定優(yōu)化)
11.現(xiàn)代的內(nèi)部存儲(chǔ)計(jì)算機(jī)程序的概念是由提出來的。
A、美籍匈牙利數(shù)學(xué)家約翰?馮?諾伊曼
B、英國數(shù)學(xué)家奧古斯塔?埃達(dá)?拜倫
C、法國發(fā)明家約瑟夫
D、英國數(shù)學(xué)家和發(fā)明家查爾斯?巴比
答案:A
12.以下程序設(shè)計(jì)語言在歷史上出現(xiàn)的正確順序是一。
A、FORTRAN>BASIC、C#、JAVA
B、FORTRAN>C、JAVA、C#
C、LISP、BASIC、C#、C++
D、COBOL.C#、Pascal.JAVA
答案:B
13.以下的應(yīng)用程序中,不能將源代碼翻譯成目標(biāo)代碼是
A、編譯器
B、解釋器
C、匯編程序
D、虛擬機(jī)
答案:D
14.計(jì)算機(jī)內(nèi)存中存儲(chǔ)體的基本單位是一。
A、字節(jié)
B、字
C、位
D、字符
答案:C
15.—可用于表示來自世界上不同語言的符號(hào)。
A、ASCH碼
B、擴(kuò)展ASCII碼
C、擴(kuò)展ASCII碼和Unicode碼
D、Unicode碼
答案:D
16.以下有關(guān)計(jì)算機(jī)數(shù)據(jù)表示的說法不正確的是.
A、計(jì)算機(jī)中并沒有采用文本的編碼來表示數(shù)字。
B、計(jì)算機(jī)存儲(chǔ)器僅僅將數(shù)據(jù)以位模式存儲(chǔ),它并不知道其存儲(chǔ)的數(shù)據(jù)是哪種類型。
C、在一種語言中,位模式到底需要多少位來表示一個(gè)符號(hào)這主要取決于內(nèi)存的大小。
D、一個(gè)字中包含多個(gè)位,字可以是8位、16位、32位,甚至是64位。
答案:C
17.程序設(shè)計(jì)語言通常分為一.
A、面向過程的、函數(shù)式的、面向?qū)ο蟮幕蜻壿嫷恼Z言
B、機(jī)器語言、匯編語言、高級(jí)語言
C、數(shù)據(jù)庫語言、通用語言、嵌入式語言
D、可視化語言、非可視化語言
答案:B
18.C#從___版本開始推出了C#for.NET集成開發(fā)環(huán)境。
A、C#7
B、C#5
C、C#8
D、C#2005
答案:D
19.C#是一出品的-一種優(yōu)秀的集成開發(fā)工具。
A、SUN公司
B、Borland公司
C、IBM公司
D、Microsoft公司
答案:D
練習(xí)題
20.設(shè)計(jì)一個(gè)窗體,從組件面板中選擇一些常見控件放置在其上。運(yùn)行該程序,觀察運(yùn)行
結(jié)果,并察看C#自動(dòng)生成了那些代碼。
(答案略)
21.查閱資料,找出最近10年來新出現(xiàn)的程序設(shè)計(jì)語言,了解為什么人們要推出這些新的
語言,并討論程序設(shè)計(jì)與語言的關(guān)系。
(答案略)
22.一種計(jì)算機(jī)程序設(shè)計(jì)語言有10種不同的指令。如果指令不重復(fù),在這種語言能編出多
少5條指令的程序?又能編出多少7條指令的程序?
答:
5條指令的程序:10x9x8x7x6(種)
7條指令的程序:10x9x8x7x6x5x4(種)
討論:今天對(duì)一個(gè)最終用戶來說,硬件、軟件和數(shù)據(jù)哪一個(gè)更有價(jià)值?
程序設(shè)計(jì)基礎(chǔ)
復(fù)習(xí)題
1.簡(jiǎn)述C#程序的基本框架結(jié)構(gòu)。
答:
C#程序由一個(gè)或多個(gè)獨(dú)立的類組成,每個(gè)類歸屬于某個(gè)命名空間。C#的類可以由一個(gè)或多
個(gè)方法組成,其中類中的靜態(tài)Main方法可用作程序運(yùn)行的入口。
2.代碼質(zhì)量評(píng)審的原則是什么?撰寫代碼時(shí)如何使程序結(jié)構(gòu)清晰,易于閱讀?
答:
通過編程經(jīng)驗(yàn)的總結(jié)和軟件工程的研究,歸納出如下代碼質(zhì)量評(píng)審原則:
正確性指程序代碼要實(shí)現(xiàn)軟件設(shè)計(jì)所要求的功能;
可靠性指代碼最后編譯的程序要能夠穩(wěn)定、可靠、安全的運(yùn)行;
規(guī)范化指代碼書寫的風(fēng)格、命名規(guī)則等要符合規(guī)范;
可讀性指代碼要便于查看和理解;
在程序代碼中適當(dāng)使用空格、空行、縮進(jìn)以及必要的注釋和規(guī)范的命名,可以使程序結(jié)構(gòu)
清晰,易于閱讀。
3.什么是數(shù)據(jù)類型?以變量為例,闡述數(shù)據(jù)類型的意義。
答:
某種數(shù)據(jù)類型就好比是一套“用來解釋存儲(chǔ)于某內(nèi)存位置上的值(好比變量的值)”的規(guī)則。
舉個(gè)例子,如果變量是個(gè)整數(shù),存儲(chǔ)于其中的位(bits)就被解釋為一個(gè)整數(shù);如果變量的數(shù)據(jù)
類型是字符串,存儲(chǔ)于其中的位(bits)就被解釋為一組字符。當(dāng)然,對(duì)編譯器來說,數(shù)據(jù)類型
的含義遠(yuǎn)不止于此。編譯器還必須能夠理解以下規(guī)則:”定義每一種數(shù)據(jù)類型能夠接受的值”以
及”對(duì)這些值來說哪些操作合法“。通過這些知識(shí),編譯器便能夠決定一個(gè)特定數(shù)據(jù)類型的值是
否被正確地使用。
4.C#數(shù)據(jù)類型可分為幾大類?C#值類型包括哪些?
答:
C#中的數(shù)據(jù)類型可以分為值類型和引用類型兩大類。其中值類型包括:簡(jiǎn)單類型、枚舉
類型和結(jié)構(gòu)類型;引用類型包括:數(shù)組類型、類類型、接口類型和代理類型。
測(cè)試題
5.以下聲明常量的語句正確的是.
A、doublePI=3.14159;
B、constdoublePI=3.14159;
C>staticdoublePI=3.14159;
D^staticconstdoublePI=3.14159;
答案:B
6.C#中簡(jiǎn)單數(shù)據(jù)類型包括—。
A、整數(shù)類型,字符類型,枚舉類型和結(jié)構(gòu)類型
B、整數(shù)類型,字符類型,布爾類型和實(shí)數(shù)類型
C、整數(shù)類型,字符類型,結(jié)構(gòu)類型和類類型
D、整數(shù)類型,字符類型,布爾類型,結(jié)構(gòu)類型和類類型
答案:B
7.以下類型在內(nèi)存中所占大小從小到大排序,正確的是
A、byteshortlong
B、bytelongshort
C、charbytefloat
D、doublefloatlong
答案:A
8.每個(gè)C#語句以__結(jié)束。
A、右大括號(hào)“}”
B、回車
C、點(diǎn)號(hào)
D、分號(hào)"
答案:D
9.下面可作為變量名的是.
A、try
B、continue
C、$500
D、24Hour
答案:c
10.在c#中,以下程序注釋正確的是
A、
(注釋行1
注釋行2
注釋行3}
B、
//注釋行1
注釋行2
注釋行3〃
C、
(*注釋行1
注釋行2
注釋行3*)
D、
/*注釋行1
注釋行2
注釋行3*/
答案:D
11.關(guān)于以下兩行代碼,不正確的說法是—。
floatf=3.2;
inti=f;
A、代碼無法編譯通過。
B、代碼可以編譯通過,i的值為3。
C、第2行應(yīng)改為inti=(int)f;
D、第1行應(yīng)改為floatf=3.2F;
答案:B
12.以下代碼無法編譯通過,是因?yàn)椤猳
classTest
{
staticintmyArg=1;
publicstaticvoidMain(String[]args)
(
intmyArg;
Console.WriteLine(myArg);
)
)
A、Main方法中的變量myArg沒有初始化。
B、Main方法中的變量myArg與Test類的myArg字段同名。
C、Test類的myArg字段不能在定義時(shí)就同時(shí)賦值。
D、Console.WriteLine(myArg)語句不能使用整數(shù)類型的myArg,而應(yīng)使用字符串類型的
myArgo
答案:A
13.以下的Main方法定義中,可用作公有類中程序運(yùn)行入口的是.
publicstaticvoidMain()
B>publicstaticvoidMain(string[]string)
C^publicstaticvoidMain(stringargs)
D、staticpublicintMain(string[]args)
答案:B
14.已知a、b、c、d都是血類型的變量,而且已有互不相同的值,順序執(zhí)行下列語句后,
條件等式為true的是____o
b=a;
a=c;
d=a;
d=b;
A>a==c
B、a==d
C^c==d
D、b==a
答案:A
15.下列實(shí)數(shù)表示方法中不正確的是—o
A、8.625e+5
B、5e-3F
C、2345.34
D、1000
答案:D
16.以下語句中屬于合法類型轉(zhuǎn)換的是—o
A、(int)"A"
B、(char)uAn
C、(bool)(2-2)
D、(char)(651/12)
答案:D
17.下列字符比較的結(jié)果為真(true)的是,
A、'a'c'A'
B、'c'v='A'
C、‘a(chǎn)'=='A'
Ds'a'>'A'
答案:D
練習(xí)題
18.指出下面表達(dá)式的類型:
a.4567b."true11c.Cd.67.0
e.56Ff."T"g.8h.true
答:
b.stringc.chard.double
e.floatf.stringg.charh.bool
19.定義一個(gè)表示學(xué)生性別的枚舉類型。
答:
enumTSex{male,female,unknown}
20.定義一個(gè)表示圖書信息的結(jié)構(gòu)類型。要求包含:書名、作者、出版社、定價(jià)、頁數(shù)、
書號(hào)等字段。試編寫一個(gè)簡(jiǎn)單的控制臺(tái)程序,使用ReadLine語句為一個(gè)圖書信息的各個(gè)字
段賦值,并用WriteLine語句在屏幕上顯示這些值。
參考程序:
usingSystem;
structTBook
publicstringName;〃書名
publicstringAuthor;〃作者
publicstringPub;〃出版社
publicdoublePrice;〃定價(jià)
publicintPages;〃頁數(shù)
publicstringISBN;〃書號(hào)
)
classClassi
(
publicstaticvoidMain(string[]args)
{
TBooktb=newTBook();
Console.WriteLine(”請(qǐng)輸入書名:”);
tb.Name=Console.ReadLine();
Console.WriteLine("請(qǐng)輸入作者:
tb.Author=Console.ReadLine();
Console.WriteLine("請(qǐng)輸入出版社:”);
tb.Pub=Console.ReadLine();
Console.WriteLine("請(qǐng)輸入定價(jià):”);
tb.Price=double.Parse(Console.ReadLine());
Console.WriteLine("請(qǐng)輸入頁數(shù):”);
tb.Pages=int.Parse(Console.ReadLine());
Console.WriteLine("請(qǐng)輸入書號(hào):");
tb.ISBN=Console.ReadLine();
ConsoIe.WriteLine("");
Console.WriteLine("《"+tb.Name+”》作者:"+tb.Author+","+tb.Pub+”出版
Console.WriteLine("定價(jià):"+tb.Price.ToStringO+"元,共計(jì)"+tb.Pages.ToStringO+”頁,書
號(hào):"+tb.ISBN);
)
)
界面如下:
圓命令提示符
:D1
請(qǐng)
入
名
\>書
輸
程
扁
式
De第
hi者
1入
劉
人峪
出
1社
.
輸
機(jī)
工
業(yè)
社
版
價(jià)
人定
請(qǐng)-
fes
青
58W。
輸
亡
11
一
《Delphi模式編程》作者:劉藝,機(jī)械工業(yè)出版社出版
定價(jià):65元,共計(jì)58。頁,書號(hào):7-111-14949-1
21.閱讀以下程序,分析運(yùn)行結(jié)果。
publicstaticvoidMain(string[]args)
(
boolb1=true;
boolb2=false;
boolb3=(1>2);
b3=b2;
b3=(b2==bl);
System.Console.WriteLine(Hb3is{0}",b3);
)
答:b3isfalse
程序設(shè)計(jì)進(jìn)階
復(fù)習(xí)題
1.什么是表達(dá)式?C#程序中復(fù)雜的表達(dá)式是如何建立的?
答:
一個(gè)表達(dá)式就是一個(gè)能夠返回值的簡(jiǎn)單結(jié)構(gòu)。最簡(jiǎn)單的表達(dá)式是變量和常量。在C#中也可
以通過使用運(yùn)算符、方法調(diào)用以及類型轉(zhuǎn)換等,建立復(fù)雜的表達(dá)式。
2.C#語言中主要有哪些運(yùn)算符?它們的優(yōu)先級(jí)是怎樣的?
C#語言中包括有賦值運(yùn)算符、增減運(yùn)算符、算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、位
運(yùn)算符等。C#語言中主要運(yùn)算符及其優(yōu)先級(jí)如下:
優(yōu)先級(jí)運(yùn)算符類型運(yùn)算符
[].()(方法調(diào)用)
優(yōu)先級(jí)最高一元運(yùn)算符!~++--4—new
0(強(qiáng)制類型轉(zhuǎn)換)
算術(shù)運(yùn)算符*/%+-
優(yōu)先級(jí)較高
位移運(yùn)算符??
關(guān)系運(yùn)算符<<=>>==!=
&Al
優(yōu)先級(jí)較低位移運(yùn)算符
&&II
邏輯運(yùn)算符?:(三元判斷運(yùn)算符,例如:A>B?X:Y)
=
優(yōu)先級(jí)最低賦值運(yùn)算符
+=-=*=/=%=
3.在程序設(shè)計(jì)的流程控制中,有哪些基本結(jié)構(gòu)?這些結(jié)構(gòu)在C#語言中是如何實(shí)現(xiàn)的?
答:
在程序設(shè)計(jì)的流程控制中,有如下三種基本控制結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。
在C#語言中順序結(jié)構(gòu)由順序執(zhí)行的各條語句實(shí)現(xiàn);選擇結(jié)構(gòu)由if語句、switch語句實(shí)現(xiàn);
循環(huán)結(jié)構(gòu)由while語句、do-while語句、for語句實(shí)現(xiàn)。
4.在什么情況下循環(huán)過程會(huì)出現(xiàn)死循環(huán)?在C#語言中使用哪條語句可以跳出循環(huán)體?
答:
當(dāng)循環(huán)條件永遠(yuǎn)為真時(shí),也就是說永遠(yuǎn)無法達(dá)到循環(huán)的邊界時(shí)會(huì)出現(xiàn)死循環(huán)。使用break
關(guān)鍵字可以強(qiáng)行跳出循環(huán)體。
5.case語句有哪幾種變形?他們又如何使用?
答:
case語句的幾種變形有:簡(jiǎn)單的case語句、帶缺省語句的case語句、帶有多值分支的case
語句、帶有范圍值分支的case語句。
(使用方法略)
6.什么是算法?算法有哪些特征?
答:
算法是為了求解某一問題在有限步驟內(nèi)、定義了具體操作序列的規(guī)則集合。通俗點(diǎn)說,算
法就是針對(duì)一類特定問題,使用計(jì)算機(jī)解題的過程。一個(gè)算法應(yīng)該具有以下五個(gè)重要的特征:
?確切性(Noambiguity)算法的每一步驟必須有確切的定義。而不應(yīng)該有二義性,例
如,在算法中不能出現(xiàn)諸如“賦值為100或1000”。
?輸入(Input)有()個(gè)或多個(gè)輸入,用于初始化運(yùn)算對(duì)象。所謂()個(gè)輸入是指無需輸
入條件,而算法本身定出了初始條件。
?輸出(Output)沒有輸出的算法是毫無意義的。一個(gè)算法應(yīng)該有一個(gè)或多個(gè)輸出,
以反映對(duì)輸入數(shù)據(jù)加工后的結(jié)果。
?可行性(Feasibility)算法原則上能夠精確地運(yùn)行,而且對(duì)于算法中的每種運(yùn)算,在
原理上人們應(yīng)該能用筆和紙做有限次運(yùn)算后完成。
?有窮性(Finite)算法必須保證執(zhí)行有限步之后結(jié)束。只具有前面四個(gè)特征的規(guī)則集
合,稱不上算法。例如,盡管操作系統(tǒng)能完成很多任務(wù),但是它的計(jì)算過程并不終止,而是無
窮無盡的執(zhí)行、等待執(zhí)行,所以操作系統(tǒng)不是算法。
7.什么是排序算法?排序算法有哪些?
答:
為了更有效地使用數(shù)組,通過對(duì)數(shù)組中的元素進(jìn)行排序,使其按一定的順序排列的算法都
稱為排序算法。
排序算法有很多,如:冒泡排序、選擇排序、插入排序、快速排序、合并排序、希爾(Shell)
排序、堆排序等
8.什么是查找算法?查找算法有哪些?
答:
查找就是從列表(list)或者數(shù)組中找出需要的數(shù)據(jù)項(xiàng),確定目標(biāo)所在位置的算法,也叫檢
索。
查找的算法很多,有順序查找、折半查找、散列值查找、轉(zhuǎn)移表查找等。
測(cè)試題
9.以下運(yùn)算符按運(yùn)算優(yōu)先級(jí)從高到低排列順序正確的是
A、!、*、V、=
B、!、=、*、>=
C、!、*、&&、>=
D、!=、*>&&、>=
答案:A
10.以下循環(huán)語句的執(zhí)行次數(shù)是—O
intx=37;
inty=3;
while(y<=x)
(
y*=y;
)
A、0
B、1
C、2
D、3
答案:C
11.下列字符串比較的結(jié)果為真(True)的是
A、’aVA'
B、'c'v='A'
C、‘a(chǎn)'=='A'
D、’a,A'
答案:D
12.設(shè)有以下聲明,則合法的賦值語句是.
intil,i2,i3;
boolbl,b2,b3;
A、i3=il/i2;
B、bl=il&&i2;
C、b2=il<i2;
D、il=i2/b2;
答案:D
13.以下關(guān)于算法不正確論述的是—o
A、算法必須是一組定義完好且排列有序的指令集合。
B、一個(gè)算法可以產(chǎn)生一個(gè)結(jié)果也可以沒有結(jié)果。
C、一個(gè)算法必須能夠終結(jié)。
D、算法的每一步都必須有清晰明白的定義。
答案:B
14.算法的基本結(jié)構(gòu)組成不包括—o
A、順序結(jié)構(gòu)
B、選擇結(jié)構(gòu)
C、遞歸結(jié)構(gòu)
D、循環(huán)結(jié)構(gòu)
答案:C
15.下列循環(huán)結(jié)構(gòu)中至少執(zhí)行一次循環(huán)體的是
A、while...do
B、do...while
C、for...
D、for...do
答案:B
16.下面幾個(gè)關(guān)于取模運(yùn)算的說法正確的是
A.-28%3等于-1
B、-28%3等于2
C、28%-3等于-2
D、-3%28等于1
答案:A
17.下面程序運(yùn)行后,m的值是_
intm=14;
intn=63;
while(m!=n)
{
while(m>n)
(
m=m-n;
)
while(n>m)
(
n=n-m;
}
)
System.Console.WriteLine(m);
A、4
B、5
C、6
D、7
答案:D
18.下面程序執(zhí)行后move的值是—
intmove=0;
inty=68/8;
if(y>8)
(
move=y/2+5;
)
else
(
inta=y;
intb=6;
move=a%b;
)
System.Console.WriteLine(move);
A、1
B、2
C、3
D、4
答案:B
19.表達(dá)式25/3%3*2的值是—
A、4
B、4.0
C、6
D、8
答案:A
20.在for循環(huán)語句中漏環(huán)控制變量的取值是如何變化的?.
A、自動(dòng)增1
B、自動(dòng)減1
C、根據(jù)for語句的不同形式來確定
D、必須在循環(huán)體中給循環(huán)控制變量賦值
答案:C
21.在While循環(huán)語句中執(zhí)行的流程為.
A、先判斷后執(zhí)行
B、先執(zhí)行后判斷
C、由循環(huán)條件決定
D、可以先判斷,也可以先執(zhí)行
答案:A
22.指出下面程序的輸出結(jié)果是什么?—
publicstaticvoidMain(slring[]args)
{
constintA=4;
inta=2;
switch(a*2)
(
caseA:System.Console.WriteLine(a);
default:System.Console.WriteLine(a*2);
A、2
B、4
C、2和4
D、程序出錯(cuò)
答案:C
23.關(guān)于下面程序段的正確說法是。
charmychar='c';
switch(mychar)
{
default:
case'a':System.Console.WriteLine("a");break;
caseb:System.Console.WriteLine(Mb");break;
)
A、程序出錯(cuò),default位置不對(duì)。
B、程序出錯(cuò),case表達(dá)式必須是int類型,不能使用char類型。
C、程序正確,屏幕顯出輸出字符a。
D、程序正確,屏幕無顯出輸出。
答案:D
24.以下方式中,不方便表示算法的是一。
A、偽代碼
B、流程圖
C、Pascal語言
D、PAD圖
答案:C
25.累加求和是__o
A、基本算法
B、排序算法
C、查找算法
D、迭代和遞歸算法
答案:A
26.一是用于編寫解決問題的算法的兩種途徑。
A、求最大值和最小值
B、函數(shù)和過程
C、查找和排序
D、迭代和遞歸
答案:D
27.對(duì)一組數(shù)據(jù)(84,47,25,15,21)排序,數(shù)據(jù)的排列次序在排序的過程中變化如為:
(1)8447251521
(2)1547258421
(3)1521258447
(4)1521254784
則采用的排序方法是.
A、選擇排序
B、冒泡排序
C、快速排序
D、插入排序
答案:B
練習(xí)題
28.閱讀以下程序,分析運(yùn)行結(jié)果。
publicclassTotal
publicstaticvoidMain(string[]args)
inty,x=l,total=0;
while(x<=10)
y=x*x;
System.Console.WriteLine(y);
total+=y;
++x;
}
System.Console.WriteLine("totalisM+total);
答:1~10的整數(shù)平方的和。
29.指出以下程序段的錯(cuò)誤:
intsex=2%3;
if(sex=1)
{
System.Console.WriteLine("Man");
)
else
(
System.Console.WriteLine("Woman");
)
答:語法錯(cuò)誤,應(yīng)該改為sex==l。
30.指出以下程序段的錯(cuò)誤:
publicstaticvoidMain(slring[]args)
{
stringsay="Ilovemyteacher.M;
stringstr=say.Substring(7,10);
if(str=="myteacher")
System.Console.WriteLine("right!");
else
(
System.Console.WriteLine("wrong!");
)
}
答:
比較字符串是否相等應(yīng)該使用equals方法,而不能使用關(guān)系運(yùn)算符==。
t=="myteacher"
應(yīng)該改為
t.equals("myteacher")
31.指出以下程序段的錯(cuò)誤:
publicstaticvoidMain(string[largs)
(
inta=4;
inib=2;
switch(b*2)
(
casea:System.Console.WriteLine(a-b);
break;
caseb:System.Console.WriteLine(a+b);
)
)
答:switch語句的case分支的值必須是常量。
32.指出以下程序段的錯(cuò)誤:
publicstaticvoidMain(string[largs)
inta=3;
intb=6;
for(inti=a;i<=b;i++)
(
a=1;
b=5;
System.Console.WriteLine(i);
if(i>=(b-a))i-;
)
)
答:本題中沒有語法錯(cuò)誤,但在for語句的循環(huán)體內(nèi),對(duì)循環(huán)變量進(jìn)行操作,造成死循環(huán)。
33.指出以下程序段的錯(cuò)誤:
publicstaticvoidMain(slring[]args)
{
for(floaty=0;y!=1.2;y+=0.1)
(
System.Console.WriteLine(y);
if(y>1.5)break;
)
)
答:因?yàn)楦↑c(diǎn)數(shù)的值不精確,y只會(huì)等于1.20(X)002,而永遠(yuǎn)不會(huì)等于1.2,造成死循環(huán)。
34.試編寫一個(gè)程序,將卜500間能同時(shí)被2,5,7整除的數(shù)打印出來。
參考程序1一整除法:
classProgrami
(
publicstaticvoidMain(string[]args)
(
for(inti=l;i<=500;i++)
if((i%2==0)&&(i%5==0)&&(i%7==0))
System.Console.WriteLine(i);
參考程序2——公約數(shù)法:
classProgram2
publicstaticvoidMain(string[]args)
intk=0;
inti=l;
while(k<=500)
k=2*5*7*i;
if(k>=500)break;
System.Console.WriteLine(k);
i=i+l;
35.試編寫一個(gè)程序,顯示如圖所示的一個(gè)數(shù)字金字塔。
1
121
12321
1234321
123454321
12345654321
1234567654321
123456787654321
12345678987654321
參考程序:
publicclassNewClass
publicstaticvoidMain(string[]args)
inti=9;
for(introw=1;row<=i;row++)
(
for(intcolumn=l;column<=(i-row);column++)
(
System.ConsoIe.Write(',);
}
for(intcolumn=1;column<=row;column++)
(
System.Console.Write(column);
}
for(intcolumn=row-1;column>0;column")
(
System.Console.Write(column);}
System.Console.WriteLine();
)
)
)
)
36.如果我國的經(jīng)濟(jì)增長以每年7.5%的速度保持穩(wěn)定不變,試編寫一個(gè)程序,計(jì)算過
多少年可以實(shí)現(xiàn)總量翻兩番?
參考程序:
publicclassDoubleTimes
(
publicstaticvoidMain(string[]args)
{
intn=0;
doubleinc=0.075,sum=l;〃增長率inc為7.5%,當(dāng)前總量sum為1
while(sum<=4)
sum=(l+inc)*sum;〃計(jì)算總量
n++;〃計(jì)算年數(shù);
System.Console.WriteLine("第“+n+”年達(dá)至!!"+sum);
)
System.Console.WriteLine("—共"+n+"年實(shí)現(xiàn)翻兩番?!?;
37.將下列程序改寫為非遞歸形式。
intexam(intx)
(
intresult;
if(x==0)
result=1;
else
result=x*exam(x-1);
returnresult;
)
答:上面的函數(shù)可改寫如下:
intexam(intx)
(
inti,result,j=1;
if(x==0)
result=j;
if(x>0)
for(i=1;i<x;i++)
j=j*i;
result=j;
returnresult;
面向?qū)ο笈c對(duì)象模型
復(fù)習(xí)題
1.面向?qū)ο蟮闹饕攸c(diǎn)概括起來有哪些?
答:
面向?qū)ο蟮奶攸c(diǎn)主要概括為抽象性、繼承性、封裝性和多態(tài)性。
抽象性一指對(duì)現(xiàn)實(shí)世界中某一類實(shí)體或事件進(jìn)行抽象,從中提取共同信息,找出共同規(guī)律,
反過來又把它們集中在一個(gè)集合中,定義為所設(shè)計(jì)目標(biāo)系統(tǒng)中的對(duì)象。
繼承性一新的對(duì)象類由繼承原有對(duì)象類的某些特性或全部特性而產(chǎn)生出來,原有對(duì)象類稱
為基類(或稱超類),新的對(duì)象類稱為派生類(或子類),派生類可以直接繼承基類的共性,又
允許派生類發(fā)展自己的個(gè)性。繼承性簡(jiǎn)化了對(duì)新的對(duì)象類的設(shè)計(jì)。
封裝性一是指對(duì)象的使用者通過預(yù)先定義的接口關(guān)聯(lián)到某一對(duì)象的服務(wù)和數(shù)據(jù)時(shí),無需知
道這些服務(wù)是如何實(shí)現(xiàn)的。即用戶使用對(duì)象時(shí)無需知道對(duì)象內(nèi)部的運(yùn)行細(xì)節(jié)。這樣,以前所開
發(fā)的系統(tǒng)中已使用的對(duì)象能夠在新系統(tǒng)中重新采用,減少了新系統(tǒng)中分析、設(shè)計(jì)和編程的工作
量。
多態(tài)性一是指不同類型的對(duì)象可以對(duì)相同的激勵(lì)做出適當(dāng)?shù)牟煌憫?yīng)的能力。多態(tài)性豐富
了對(duì)象的內(nèi)容,擴(kuò)大了對(duì)象的適應(yīng)性,改變了對(duì)象單一繼承的關(guān)系。
2.什么是建模語言?什么是UML?
答'
建模語言是一種圖形化的文檔描述性語言,利用它所期望解決的核心問題是溝通障礙的問
題。而建模工具則是建模的輔助手段,利用它所期望解決的核心問題是生產(chǎn)力的問題。
UML是統(tǒng)一建模語言(TheUnifiedModelingLanguage)的英文縮寫,UML是一^通用的
可視化建模語言,用于對(duì)軟件進(jìn)行描述、可視化處理、構(gòu)造和建立軟件系統(tǒng)制品的文檔。它可
以把人們對(duì)所需要構(gòu)建系統(tǒng)的想法和理解記錄下來,以便用于對(duì)系統(tǒng)的分析、設(shè)計(jì)、研究、配
置和維護(hù)。UML適用于各種軟件開發(fā)方法、軟件生命周期的各個(gè)階段、各種應(yīng)用領(lǐng)域以及各種
開發(fā)工具,是一種總結(jié)了以往建模技術(shù)的經(jīng)驗(yàn)并吸收當(dāng)今優(yōu)秀成果的標(biāo)準(zhǔn)建模方法。
3.如何理解面向?qū)ο蟪绦蛟O(shè)計(jì)中的對(duì)象?
答:
我們可以從以下幾個(gè)方面來理解面向?qū)ο蟪绦蛟O(shè)計(jì)中的對(duì)象:
對(duì)象可以視為一組相關(guān)的操作代碼和數(shù)據(jù)的組合對(duì)象封裝了方法和數(shù)據(jù),并提供外部調(diào)用
的接口。這使得對(duì)象可以作為一個(gè)獨(dú)立的整體單元安全使用,維護(hù)了自身的完整性和可操作性。
在面向?qū)ο蟪绦蛟O(shè)計(jì)中,過程和函數(shù)被稱作方法,數(shù)據(jù)被稱作屬性。在對(duì)象模型中,可以用屬
性來表示對(duì)象的內(nèi)容或狀態(tài),用方法來表示對(duì)象的操作。理論上,可以把所有要解決的問題分
解成程序中的各個(gè)對(duì)象,由他們自己解決各自的問題。當(dāng)然,對(duì)象的粒度劃分仍然是面向?qū)ο?/p>
編程中的難題。
對(duì)象是類的實(shí)例對(duì)象可以視為神奇的變量,它相當(dāng)于“類”類型的變量。
對(duì)象可以互相協(xié)作,共同完成任務(wù)對(duì)象之間可以通過發(fā)送消息請(qǐng)求而相互聯(lián)系,在消息請(qǐng)
求中可以調(diào)用方法。面向?qū)ο蟪绦蛟O(shè)計(jì)中的一條典型的代碼可以是一個(gè)對(duì)象發(fā)送的一條消息,
消息由對(duì)象的名字后跟它的方法來表示。一個(gè)消息通常由三部分組成:接收對(duì)象的名字、對(duì)象
方法的名字和方法成參數(shù)。即:對(duì)象.方法(參數(shù));
通過繼承、組合或封裝等方式可以產(chǎn)成新的對(duì)象這種方式產(chǎn)生的新對(duì)象不僅最大限度地實(shí)
現(xiàn)了代碼的重用,并以此在程序中構(gòu)建復(fù)雜的體系,將系統(tǒng)的復(fù)雜性隱匿于對(duì)象的簡(jiǎn)易性之中。
對(duì)象根據(jù)特定的意義和用途有不同的劃分方法程序中的對(duì)象既可以劃分賬單對(duì)象、收銀員
對(duì)象這樣的實(shí)體對(duì)象,也可以劃分安全對(duì)象、協(xié)調(diào)對(duì)象、事務(wù)對(duì)象這樣的功能對(duì)象。通常我們
可以按照界面和邏輯分開的原則,將系統(tǒng)劃分為系統(tǒng)邏輯對(duì)象和用戶界面對(duì)象。
4.什么是類?類包括那些成員?
答:
類是對(duì)具有共同實(shí)現(xiàn)的一些對(duì)象或一系列對(duì)象的描述。類是用來創(chuàng)建對(duì)象的模板,類抽象
出具體對(duì)象的相似性,定義它們的共同特征,包括數(shù)據(jù)和操作。類包括了數(shù)據(jù)成員和函數(shù)成員。
5.什么是方法?C#中哪些方法相當(dāng)于函數(shù),哪些方法相當(dāng)于過程?
答:
方法是在類中定義,用來實(shí)現(xiàn)對(duì)象操作的過程或者函數(shù)。方法是屬于一個(gè)給定對(duì)象的過程
和函數(shù),方法反映的是對(duì)象的行為而不是數(shù)據(jù)。
通常C#中的方法可分為有返回值和沒有返回值的兩種,前者相當(dāng)于傳統(tǒng)程序中的函數(shù),后
者相當(dāng)于傳統(tǒng)程序中的過程。
6.對(duì)象之間有哪些關(guān)系?如何理解這些關(guān)系?
答:
對(duì)象之間的關(guān)系有:
?聚合關(guān)系("has—a”)
?繼承關(guān)系("is—a")
,依賴關(guān)系("use—a")
聚合關(guān)系("has—a”關(guān)系)從字面上很容易理解,它是指新對(duì)象由已有的對(duì)象組合而成,或
新對(duì)象包含有其他對(duì)象。比如,一個(gè)班級(jí)就包含多個(gè)學(xué)生。也就是說,聚合關(guān)系意味著類A的
對(duì)象包含類B的對(duì)象。
從另一個(gè)角度看,聚合關(guān)系又表現(xiàn)為對(duì)象之間的相互關(guān)聯(lián),有人更喜歡用概念更寬泛的“關(guān)
聯(lián)關(guān)系”(association)。因此,可以認(rèn)為聚合關(guān)系是關(guān)聯(lián)關(guān)系的一種,只是聚合關(guān)系在語義上更加
嚴(yán)格,甚至可以用來表示局部和整體的關(guān)系,例如要標(biāo)識(shí):一輛汽車(整體),和一個(gè)車身(局
部X一臺(tái)引擎(局部)和四個(gè)(輪子)之間的關(guān)系,就可以使用聚合關(guān)系。
繼承關(guān)系("一^'關(guān)系)用來表示對(duì)象與類之間所具有的泛化和特化關(guān)系。比如,TCar類
和TBicycle類從TVehicle類繼承而來。TVehicle稱為TCar和TBicycle的基類。TCar類具有特
定的方法,如:踩油門、點(diǎn)火熄火等。但它的其他方法,諸如:剎車、停車等,卻都是從TVehicle
類繼承過來的,這些與具體什么類型的車無關(guān)。一般而言,如果類A擴(kuò)展了類B,那么類A不
僅繼承類B中的方法,而且還具有更多的功能。
依賴關(guān)系("use—a”關(guān)系)是最明顯也最常見的關(guān)系。比如,由于Driver對(duì)象需要訪問某一
Car對(duì)象,以調(diào)用它的點(diǎn)火、踩油門、停車等方法,所以Driver對(duì)象要用到Car對(duì)象,兩者間
存在著依賴關(guān)系。
這就是說,如果一個(gè)對(duì)象的方法操作了另一個(gè)對(duì)象,那么這個(gè)對(duì)象就依賴于另一個(gè)對(duì)象。
所以在設(shè)計(jì)類的時(shí)候就應(yīng)盡量將相互依賴的類的數(shù)量減少到最少。如果類A不知道類B的存在,
那么它就不會(huì)關(guān)心類B的任何改變,這還意味著對(duì)類B的改變不會(huì)使類A產(chǎn)生任何bugo用軟
件工程術(shù)語來說,就是要使類間的耦合最小。
測(cè)試題
7.以下關(guān)于對(duì)象的說法不正確的是—o
A、組成客觀世界(事物)的不同實(shí)體可以看成是對(duì)象。
B、對(duì)象是一個(gè)具有封裝性和信息隱藏的獨(dú)立模塊。
C、對(duì)象可以分解和組合,還可以通過相似性原理進(jìn)行分類和抽象。
D、對(duì)象能更好地模擬計(jì)算機(jī)工作方式,體現(xiàn)計(jì)算機(jī)運(yùn)行規(guī)律,提高程序執(zhí)行效率。
答案:D
8.面向?qū)ο蟮奶攸c(diǎn)主要概括為—。
A、可分解性、可組合性、可分類性
B、繼承性、封裝性和多態(tài)性
C、抽象性、繼承性、封裝性和多態(tài)性
D、封裝性、易維護(hù)性、可擴(kuò)展性、可重用性
答案:C
9.在C#中最基本的類是__。
A、Control
B、Component
C、Object
D、Class
答案:c
10.不能在派生類中被覆蓋的方法是—.
A、虛方法
B、實(shí)例方法
C、靜態(tài)方法
D、抽象方法
答案:C
11.以下論述不正確的是_O
A、對(duì)象變量是對(duì)象的一個(gè)引用。
B、對(duì)象是類的一個(gè)實(shí)例。
C、一個(gè)對(duì)象可以作為另一個(gè)對(duì)象的數(shù)據(jù)成員。
D、對(duì)象不可以作為函數(shù)的參數(shù)傳遞。
答案:D
12.對(duì)象之間的繼承關(guān)系是__關(guān)系。
A、has—a
B、is—a
C^use—a
D>of-a
答案:B
13.以下Bridge與Road之間是__關(guān)系。
classBridge
(
Roadroad;
)
classRoad
(
Stringname;
)
A^has—a
B、is—a
C^use—a
D、of-a
答案:A
14.要使某個(gè)類能被同一個(gè)名稱空間中的其他類訪問,但不能被這個(gè)名稱空間以外的類訪
問,可以—。
A、讓該類不使用任何關(guān)鍵字。
B、使用private關(guān)鍵字。
C、使用const關(guān)鍵字。
D、使用protected關(guān)鍵字。
答案:A
15.UML是一種_
A、數(shù)據(jù)庫語言
B、程序設(shè)計(jì)語言
C、建模語言
D、面向?qū)ο笳Z言
答案:C
16.分析以下程序的運(yùn)行結(jié)果,得到的結(jié)論是.
publicclassMyClass
(
strings;
publicstaticvoidMain(string[]args)
(
MyClassm=newMyClass();
m.go();
)
voidMyClass()
(
s="constructor";
)
voidgo()
(
System.Console.WriteLine(s);
A、程序可以運(yùn)行,但屏幕沒有輸出任何字符。
B、程序可以運(yùn)行,屏幕輸出字符串為”null”。
C、程序可以運(yùn)行,屏幕輸出字符串為”constructor"。
D、程序無法編譯運(yùn)行。
答案:C
練習(xí)題
17.設(shè)計(jì)一個(gè)Retangle類,提供通過length和width字段計(jì)算面積和周長的2個(gè)方法。
并用main方法來測(cè)試程序。
參考答案:
publicclassRetangle
(
privatedoublelength;
privatedoublewidth;
publicRetangle(double1,doublew)
(
length=1;
width=w;
)
publicdoublecalcPerimeter()
(
return2*(length+width);
)
publicdoublecalcArea()
(
returnlength*width;
)
publicstaticvoidMain(string|]args)
{
Retangleretangle=newRetangle(640,480);
System.Console.WriteLine("長為"+retangle.length+"寬為"
+retangle.width+"的長方形");
System.Console.WriteLine("面積是:"+retangle.calcArea()
+"周長是:"4-retangle.calcPerimeter());
18.分析以下程序,繪出UML類圖,指出Vehicle與Engine這兩個(gè)類之間的關(guān)系,并給
出程序運(yùn)行結(jié)果。
publicclassVehicle
(
publicVehicle()
(
make=TiatSiena1.5EL”;
color="法拉利紅色”;
topSpeed=180;
)
publicstaticvoidmain(String[]args)
(
Vehiclecar=newVehicle();
ystem.out.println(car.showlnfo());
car.start();
car.speedUpO;
car.slowDow
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人與企業(yè)合作合同范例
- 工程簽收合同范例
- 儀器標(biāo)簽采購合同范例
- 林地用地流轉(zhuǎn)合同范例
- 校服服裝訂購合同范例
- 賓館水電維護(hù)合同范例
- 涉外采礦合同范例
- 國外客戶傭金合同范例
- 展館合同范例
- 期房內(nèi)部合同范例
- 校招面試官培訓(xùn)課件
- 初中九年級(jí)英語課件ReadingThe world in danger 市賽一等獎(jiǎng)
- 展覽館維修維護(hù)投標(biāo)方案
- 項(xiàng)目電氣工程師總結(jié)
- 陳赫賈玲小品《歡喜密探》臺(tái)詞劇本
- 2023招聘專員個(gè)人年終總結(jié)
- 國際郵輪產(chǎn)業(yè)及未來郵輪
- 水工建筑物考試試題及答案
- 多元回歸分析論文
- 小學(xué)第四季度意識(shí)形態(tài)分析研判報(bào)告
- 部編二年級(jí)語文上冊(cè) 培優(yōu)輔差測(cè)試記錄表
評(píng)論
0/150
提交評(píng)論