第一篇:川大網(wǎng)教《面向?qū)ο蟪绦蛟O(shè)計(jì)》第一次作業(yè)答案(96分)
《面向?qū)ο蟪绦蛟O(shè)計(jì)》第一次作業(yè)答案
你的得分: 96.0
完成日期:2013年09月02日 15點(diǎn)40分
每道小題括號(hào)里的答案是您最高分那次所選的答案,標(biāo)準(zhǔn)答案將在本次作業(yè)結(jié)束(即2013年09月12日)后顯示在題目旁邊。
一、單項(xiàng)選擇題。本大題共30個(gè)小題,每小題 2.0 分,共60.0分。在每小題給出的選項(xiàng)中,只有一項(xiàng)是符合題目要求的。1.C++函數(shù)的聲明和定義可以分開,函數(shù)聲明不需要(D)。
A.返回類型 B.函數(shù)名 C.參數(shù)表 D.2.函數(shù)體
函數(shù)的形參是(B)。
A.全局變量 B.C.靜態(tài)變量 D.局部變量
3.部變量
數(shù)組名表示的是數(shù)組的(C)。
A.類型 B.用途 C.地址 D.長(zhǎng)度
4.如果短整型的長(zhǎng)度是2字節(jié),有一個(gè)短整型指針p的值是0xFFED1200,那么p+1的值為(B)。
A.0xFFED1201 B.0xFFED1202 C.0xFFED1203 D.5.0xFFED1204 private訪問屬性限制對(duì)象的成員可以在(A)中訪問。
A.本類的成員函數(shù) B.main函數(shù) C.父類的成員函數(shù) D.子類的成員函數(shù)
6.如果定義了一個(gè)類myclass,則為myclass類對(duì)象以成員函數(shù)形式重載后++運(yùn)算符的聲明應(yīng)該為(C)。
A.myclass operator++();B.myclass& operator++();C.myclass operator++(int);D.7.myclass& operator++(int);如果有如下定義: const char* str = “OK”;那么,sizeof(str)的值應(yīng)該是(D)
A.B.C.D.8.4 父類和子類各自定義一個(gè)成員函數(shù),函數(shù)名相同,參數(shù)表不同,那么(C)。A.在子類中這兩個(gè)函數(shù)構(gòu)成重載關(guān)系 B.子類不會(huì)繼承父類的這個(gè)函數(shù) C.D.子類中的函數(shù)會(huì)覆蓋父類中的函數(shù)
編譯時(shí)會(huì)發(fā)生錯(cuò)誤
9.如果myclass類定義了拷貝構(gòu)造函數(shù)和一個(gè)整型參數(shù)的構(gòu)造函數(shù),還重載了賦值運(yùn)算符,那么語(yǔ)句myclass obj = 100;會(huì)(B)。
A.調(diào)用拷貝構(gòu)造函數(shù)
B.C.D.調(diào)用賦值運(yùn)算符
調(diào)用整型參數(shù)的構(gòu)造函數(shù)
引起編譯錯(cuò)誤
10.抽象類指的是(D)。
A.B.只有成員函數(shù)沒有數(shù)據(jù)成員的類 C.D.有虛函數(shù)的類
沒有任何成員的類
有純虛函數(shù)的類
11.多重繼承時(shí),如果派生類的兩個(gè)父類有一個(gè)共同的虛基類,那么虛基類的初始化參數(shù)由(C)的構(gòu)造函數(shù)來傳遞。
A.第一個(gè)父類 B.第二個(gè)父類 C.派生類 D.以上都不是 12.多態(tài)性是通過(C)實(shí)現(xiàn)的。
A.構(gòu)造函數(shù) B.析構(gòu)函數(shù) C.虛函數(shù) D.函數(shù)重載
13.十進(jìn)制數(shù)127轉(zhuǎn)換成二進(jìn)制數(shù)是(A)
A.11111111 B.01111111 C.10000000 D.11111110 14.執(zhí)行語(yǔ)句
char ch[] = “Hello”;char * p = &ch[0];cout<<*p 結(jié)果是輸出(C)。
A.一個(gè)地址 B.H C.Hello D.亂碼
15.以下不能正確進(jìn)行字符串賦初值的語(yǔ)句是(A)
A.char str[5]=“good!”;B.char str[]=“good!”;C.char *str=“good!”;D.char str[5]={‘g',‘o',‘o',‘d'};
16.用cin為整型變量輸入數(shù)據(jù)時(shí),如果從鍵盤輸入的不是數(shù)字,輸入后整型變量中的結(jié)果會(huì)是:(D)
A.0 B.負(fù)數(shù) C.正數(shù) D.不確定
17.使用流控制符(C)需要頭文件。
A.endl B.hex C.setw D.left 18.C++泛型編程通過(B)實(shí)現(xiàn)。
A.void B.template C.NULL D.typedef 19.C++異常處理機(jī)制中沒有(D)。
A.try B.throw C.catch D.finally 20.要打開一個(gè)文件并從中讀取數(shù)據(jù),應(yīng)該使用(C)類的對(duì)象。
A.istream B.ostream C.ifstream D.ofstream 21.判斷一個(gè)ofstream類對(duì)象file打開文件是否失敗,應(yīng)該判斷(D)。
A.B.C.D.feof成員函數(shù)的返回值
open成員函數(shù)的返回值
創(chuàng)建文件流對(duì)象時(shí)是否拋出異常
!file 是否為真
22.鏈表的基本單元是(B)。
A.節(jié)點(diǎn) B.頭指針 C.尾指針 D.數(shù)據(jù)域
23.二叉查找樹按(C)遍歷時(shí)訪問到節(jié)點(diǎn)的數(shù)據(jù)是排好序的。
A.前序 B.中序 C.后序
D.層次
24.二進(jìn)制數(shù)00001001跟01000011異或的結(jié)果為(C)。
A.01001011 B.00000001 C.01001010 D.01001100 25.若有定義:int aa[ 8]。則以下表達(dá)式中不能代表數(shù)組元aa[1]的地址的是(C)
A.&aa[0]+1 B.&aa[1] C.&aa[0]++ D.aa+1 26.一個(gè)類如果沒有定義任何函數(shù),編譯器不會(huì)自動(dòng)為這個(gè)類產(chǎn)生(C)。
A.拷貝構(gòu)造函數(shù) B.無參構(gòu)造函數(shù) C.輸出流運(yùn)算符 D.賦值運(yùn)算符
27.如果在try塊中用
throw “error”;
語(yǔ)句拋出一個(gè)異常,則參數(shù)類型是(B)的catch塊能夠捕獲這個(gè)異常。
A.char * B.const char * C.Char D.const char
28.隊(duì)列的最大特征是(A)。
A.先進(jìn)先出 B.C.自動(dòng)排序 D.大數(shù)優(yōu)先
29.下列排序算法中,平均效率最低的排序算法是(B)。
A.插入法 B.C.冒泡法
后進(jìn)先出 選擇法 D.快速排序法
30.下面不支持下標(biāo)操作的容器是(C)。
A.vector B.deque C.list D.map
二、多項(xiàng)選擇題。本大題共5個(gè)小題,每小題 4.0 分,共20.0分。在每小題給出的選項(xiàng)中,有一項(xiàng)或多項(xiàng)是符合題目要求的。1.for語(yǔ)句的格式為for(表達(dá)式1;表達(dá)式2;表達(dá)式3),其中可以省略的是(BCD)。
A.兩個(gè)分號(hào) B.表達(dá)式1 C.表達(dá)式2 D.2.表達(dá)式3 C++中變量要求(ABD)。
A.有明確的類型 B.先聲明后使用 C.名字中不能使用下劃線
D.3.嚴(yán)格區(qū)分大小寫
流程控制語(yǔ)句有(ABC)幾種。
A.條件語(yǔ)句 B.C.D.表達(dá)式語(yǔ)句
分支語(yǔ)句
循環(huán)語(yǔ)句
4.面向?qū)ο蟮木幊谭椒ǖ闹饕卣靼ǎˋBC)。
A.封裝 B.繼承 C.多態(tài) D.5.消息
類成員的訪問屬性可以是(ABC)。
A.public B.protected C.private D.default
三、判斷題。本大題共5個(gè)小題,每小題 4.0 分,共20.0分。1.正確
2.正確
3.正確
4.錯(cuò)誤 錯(cuò)誤 錯(cuò)誤 _int可以定義為用戶標(biāo)識(shí)符。(正確)結(jié)構(gòu)化程序設(shè)計(jì)的基本方法是遞歸法。(錯(cuò))C++語(yǔ)言的跳轉(zhuǎn)語(yǔ)句中,break語(yǔ)句只應(yīng)用于循環(huán)體中。(錯(cuò))
C++語(yǔ)言是從早期的C語(yǔ)言逐漸發(fā)展演變而來的,與C語(yǔ)言相比,它在求解問題方法上進(jìn)行的最大改進(jìn)是面向過程。(錯(cuò))
正確 錯(cuò)誤
5.重載函數(shù)形參個(gè)數(shù)可以不同。(正確)正確
錯(cuò)誤
第二篇:川大網(wǎng)教2018《統(tǒng)計(jì)學(xué)》第一次作業(yè)答案
川大網(wǎng)教2018《統(tǒng)計(jì)學(xué)》第一次作業(yè)答案
一、單項(xiàng)選擇題。本大題共10個(gè)小題,每小題 4.0 分,共40.0分。在每小題給出的選項(xiàng)中,只有一項(xiàng)是符合題目要求的。
1.進(jìn)行全市百貨商店售貨員工作情況調(diào)查時(shí),總體單位是()。
A.每個(gè)百貨商店
B.百貨商店的每個(gè)售貨員 C.所有的百貨商店
D.百貨商店的所有售貨員 2.對(duì)全市的科技人員進(jìn)行調(diào)查,每一位科技人員是總體單位,則科技人員的職稱是()。A.質(zhì)量指標(biāo)
B.數(shù)量指標(biāo) C.數(shù)量標(biāo)志 D.品質(zhì)標(biāo)志
3.全國(guó)工業(yè)企業(yè)生產(chǎn)設(shè)備普查,每個(gè)工業(yè)企業(yè)是()。A.調(diào)查對(duì)象 B.調(diào)查單位
C.填報(bào)單位
D.調(diào)查單位,也是填報(bào)單位
4.某些產(chǎn)品在檢驗(yàn)和測(cè)量時(shí)常有破壞性,一般宜采用()。
A.全面調(diào)查 B.典型調(diào)查 C.重點(diǎn)調(diào)查 D.抽樣調(diào)查
5.對(duì)城鎮(zhèn)居民的生活水平調(diào)查是()。
A.普查
B.抽樣調(diào)查 C.重點(diǎn)調(diào)查 D.典型調(diào)查
6.某連續(xù)變量數(shù)列,其末組為開口組,下限為500,又知其鄰組的組距為40,則末組的組中值為()。A.520 B.510 C.500 D.480
7.說明統(tǒng)計(jì)表名稱的詞句,在統(tǒng)計(jì)表中稱為()。
A.B.C.D.橫行標(biāo)題 縱欄標(biāo)題
主詞 總標(biāo)題 8.下列指標(biāo)中()中是總量指標(biāo)。
A.職工平均工資 B.國(guó)內(nèi)生產(chǎn)總值 C.出勤率 D.人口密度
9.某企業(yè)計(jì)劃產(chǎn)值比去年提高10%,實(shí)際提高15%,則其計(jì)劃完成程度為()。A.115% B.120% C.104.5% D.110.5%
10.工人出勤率指標(biāo)是()。
A.B.C.D.比較相對(duì)指標(biāo)
結(jié)構(gòu)相對(duì)指標(biāo) 強(qiáng)度相對(duì)指標(biāo)
計(jì)劃完成程度相對(duì)指標(biāo)
二、多項(xiàng)選擇題。本大題共5個(gè)小題,每小題 5.0 分,共25.0分。在每小題給出的選項(xiàng)中,有一項(xiàng)或多項(xiàng)是符合題目要求的。
1.某年級(jí)共有學(xué)生102人,其中共青團(tuán)員100人,女生占71%,某課程考試平均成績(jī)?yōu)?0分,某同學(xué)考分最高為96分。下列說法正確的是()。A.其中共青團(tuán)員100人是質(zhì)量指標(biāo) B.女生占71%是品質(zhì)標(biāo)志
C.某課程考試平均成績(jī)80分是質(zhì)量指標(biāo)
D.每名同學(xué)是總體單位
E.某同學(xué)考分96分是變量值 2.普查屬于().A.一次性調(diào)查 B.經(jīng)常性調(diào)查 C.全面性調(diào)查 D.非全面調(diào)查
E.專門調(diào)查
3.下列指標(biāo)中屬于時(shí)期指標(biāo)的有()
A.工業(yè)增加值 B.商品零售額 C.房屋竣工面積 D.工資總額 E.出生人口數(shù)
4.已知一個(gè)時(shí)期數(shù)列的項(xiàng)數(shù),平均增長(zhǎng)量和平均增長(zhǎng)速度,便可得出()
A.最初水平與任一時(shí)期的水平之比 B.各期發(fā)展水平C.最初水平D.最末水平
E.各期的定基發(fā)展速度
5.相關(guān)關(guān)系具有的特點(diǎn)是現(xiàn)象之間()。
A.B.C.D.E.確實(shí)存在數(shù)量上的依存關(guān)系 數(shù)量上的關(guān)系是確定的 存在質(zhì)的聯(lián)系 存在函數(shù)關(guān)系
數(shù)量上的依存關(guān)系不是確定的
三、判斷題。本大題共10個(gè)小題,每小題 4.0 分,共40.0分。1.2.3.4.5.6.7.8.9.數(shù)量指標(biāo)是由數(shù)量標(biāo)志值匯總來的,質(zhì)量指標(biāo)是由品質(zhì)標(biāo)志值匯總來的。綜合為統(tǒng)計(jì)指標(biāo)的前提是總體的同質(zhì)性。
進(jìn)行全面調(diào)查,只會(huì)產(chǎn)生登記性誤差,沒有代表性誤差。
重點(diǎn)調(diào)查和抽樣調(diào)查都是非全面調(diào)查,其調(diào)查結(jié)果都可以用于推算總體指標(biāo)。通過統(tǒng)計(jì)分組,使同一組內(nèi)的各單位性質(zhì)相同,不同組的單位性質(zhì)相異。相對(duì)指標(biāo)實(shí)際上是兩個(gè)有聯(lián)系的指標(biāo)數(shù)值之比,所以它們之間必須是同值的。比較兩總體的平均數(shù)的代表性,標(biāo)準(zhǔn)差系數(shù)較小的總體,其平均數(shù)代表性亦小。平均數(shù)反映了總體分布的集中趨勢(shì),它是總體分布的重要特征值。
幾何平均數(shù)是計(jì)算平均比率和平均速度的比較適用的一種方法,符合人們的認(rèn)識(shí)實(shí)際。
10.各變量值的次數(shù)相同時(shí),眾數(shù)不存在。
第三篇:面向?qū)ο蟪绦蛟O(shè)計(jì)教程 答案
面向?qū)ο蟪绦蛟O(shè)計(jì)教程(C++語(yǔ)言描述)題解與課程設(shè)計(jì)指導(dǎo)
第1章
面向?qū)ο蟪绦蛟O(shè)計(jì)概論
一、名詞解釋 抽象封裝消息 【問題解答】
面向?qū)ο蠓椒ㄖ械某橄笫侵笇?duì)具體問題(對(duì)象)進(jìn)行概括,抽出一類對(duì)象的公共性質(zhì)并加以描述的過程。
面向?qū)ο蠓椒ㄖ械姆庋b就是把抽象出來的對(duì)象的屬性和行為結(jié)合成一個(gè)獨(dú)立的單位,并盡可能隱蔽對(duì)象的內(nèi)部細(xì)節(jié)。
消息是面向?qū)ο蟪绦蛟O(shè)計(jì)用來描述對(duì)象之間通信的機(jī)制。一個(gè)消息就是一個(gè)對(duì)象要求另一個(gè)對(duì)象實(shí)施某種操作的一個(gè)請(qǐng)求。
二、填空題(1)目前有面向過程的結(jié)構(gòu)化程序設(shè)計(jì)方法和面向?qū)ο蟮某绦蛟O(shè)計(jì)方法兩種重要的程序設(shè)計(jì)方法。
(2)結(jié)構(gòu)化程序設(shè)計(jì)方法中的模塊由順序、選擇和循環(huán)3種基本結(jié)構(gòu)組成。(3)在結(jié)構(gòu)化程序設(shè)計(jì)方法中,程序可表示為程序=數(shù)據(jù)結(jié)構(gòu)+算法; 而面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,程序可表示為程序=對(duì)象+消息。(4)結(jié)構(gòu)化程序設(shè)計(jì)方法中的基本模塊是過程; 而面向?qū)ο蟪绦蛟O(shè)計(jì)方法中的基本模塊是類。
(5)面向?qū)ο蟪绦蛟O(shè)計(jì)方法具有抽象性、封裝性、繼承性和多態(tài)性等特點(diǎn)。
三、選擇題(至少選一個(gè),可以多選)
(1)面向?qū)ο蟪绦蛟O(shè)計(jì)著重于(B)的設(shè)計(jì)。A.對(duì)象B.類C.算法D.數(shù)據(jù)(2)面向?qū)ο蟪绦蛟O(shè)計(jì)中,把對(duì)象的屬性和行為組織在同一個(gè)模塊內(nèi)的機(jī)制叫做(C)。
A.抽象 B.繼承 C.封裝 D.多態(tài)
(3)在面向?qū)ο蟪绦蛟O(shè)計(jì)中,類通過(D)與外界發(fā)生關(guān)系。A.對(duì)象 B.類 C.消息 D.接口
(4)面向?qū)ο蟪绦蛟O(shè)計(jì)中,對(duì)象與對(duì)象之間的通信機(jī)制是(C)。A.對(duì)象 B.類 C.消息 D.接口
(5)關(guān)于C++與C語(yǔ)言的關(guān)系的描述中,(D)是錯(cuò)誤的。A.C語(yǔ)言是C++的一個(gè)子集 B.C語(yǔ)言與C++是兼容的
C.C++對(duì)C語(yǔ)言進(jìn)行了一些改進(jìn) D.C++和C語(yǔ)言都是面向?qū)ο蟮?/p>
【結(jié)果分析】
C語(yǔ)言是面向過程的。C++語(yǔ)言是一種經(jīng)過改進(jìn)的更為優(yōu)化的C語(yǔ)言,是一種混合型語(yǔ)言,既面向過程也面向?qū)ο蟆?/p>
(6)面向?qū)ο蟮某绦蛟O(shè)計(jì)將數(shù)據(jù)結(jié)構(gòu)與(A)放在一起,作為一個(gè)相互依存、不可分割的整體來處理。A.算法 B.信息 C.數(shù)據(jù)隱藏 D.數(shù)據(jù)抽象(7)下面(A)不是面向?qū)ο笙到y(tǒng)所包含的要素。
A.重載 B.對(duì)象 C.類 D.繼承 【結(jié)果分析】
面向?qū)ο?對(duì)象+類+繼承+消息+多態(tài)(8)下面說法正確的是(BC)。
A.將數(shù)據(jù)結(jié)構(gòu)和算法置于同一個(gè)函數(shù)內(nèi),即為數(shù)據(jù)封裝 B.一個(gè)類通過繼承可以獲得另一個(gè)類的特性
C.面向?qū)ο笠蟪绦騿T集中于事物的本質(zhì)特征,用抽象的觀點(diǎn)看待程序 D.同一消息為不同的對(duì)象接受時(shí),產(chǎn)生的行為是一樣的,這稱為一致性 【結(jié)果分析】
面向?qū)ο蟪绦蛟O(shè)計(jì)方法具有抽象性、封裝性、繼承性和多態(tài)性等特點(diǎn)。將數(shù)據(jù)結(jié)構(gòu)和算法置于同一個(gè)類內(nèi),即為數(shù)據(jù)封裝。同一消息為不同的對(duì)象接受時(shí),產(chǎn)生的行為可能是不一樣的,這稱為多態(tài)性。(9)下面說法正確的是(AD)。
A.對(duì)象是計(jì)算機(jī)內(nèi)存中的一塊區(qū)域,它可以存放代碼和數(shù)據(jù) B.對(duì)象實(shí)際是功能相對(duì)獨(dú)立的一段程序
C.各個(gè)對(duì)象間的數(shù)據(jù)可以共享是對(duì)象的一大優(yōu)點(diǎn)
D.在面向?qū)ο蟮某绦蛑?,?duì)象之間只能通過消息相互通信 【結(jié)果分析】
對(duì)象是計(jì)算機(jī)內(nèi)存中的一塊區(qū)域。在對(duì)象中,不但存有數(shù)據(jù),而且存有代碼,使得每個(gè)對(duì)象在功能上相互之間保持相對(duì)獨(dú)立。對(duì)象之間存在各種聯(lián)系,但它們之間只能通過消息進(jìn)行通信。
四、判斷題
(1)在高級(jí)程序設(shè)計(jì)語(yǔ)言中,一般用類來實(shí)現(xiàn)對(duì)象,類是具有相同屬性和行為的一組對(duì)象的集合,它是創(chuàng)建對(duì)象的模板。(√)
(2)C++語(yǔ)言只支持面向?qū)ο蠹夹g(shù)的抽象性、封裝性、繼承性等特性,而不支持多態(tài)性。(×)【結(jié)果分析】
C++語(yǔ)言不僅支持面向?qū)ο蠹夹g(shù)的抽象性、封裝性、繼承性等特性,而且支持多態(tài)性。
(3)面向?qū)ο蟪绦蛟O(shè)計(jì)中的消息應(yīng)該包含“如何做”的信息。(×)【結(jié)果分析】
消息是面向?qū)ο蟪绦蛟O(shè)計(jì)用來描述對(duì)象之間通信的機(jī)制。向?qū)ο蟆鞍l(fā)送消息”只需告訴對(duì)象做什么,對(duì)象根據(jù)這個(gè)消息決定如何做。(4)一個(gè)消息只能產(chǎn)生特定的響應(yīng)效果。(×)【結(jié)果分析】
當(dāng)一個(gè)對(duì)象發(fā)出消息時(shí),由于接收對(duì)象的類型可能不同,所以,它們可能做出不同的反應(yīng)。這樣,一個(gè)消息可以產(chǎn)生不同的響應(yīng)效果,這種現(xiàn)象叫做多態(tài)。(5)類的設(shè)計(jì)和類的繼承機(jī)制實(shí)現(xiàn)了軟件模塊的可重用性。(√)(6)C++語(yǔ)言和Java語(yǔ)言均不是一個(gè)純正的面向?qū)ο蟮某绦蛟O(shè)計(jì)的語(yǔ)言。(×)【結(jié)果分析】
Java語(yǔ)言是一個(gè)純正的面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言。(7)學(xué)習(xí)C++語(yǔ)言是學(xué)習(xí)面向?qū)ο蟮某绦蛟O(shè)計(jì)方法的唯一途徑。(×)【結(jié)果分析】
程序設(shè)計(jì)方法是獨(dú)立于具體程序設(shè)計(jì)語(yǔ)言的一種技術(shù),學(xué)習(xí)C++語(yǔ)言是學(xué)習(xí)面向?qū)ο蟪绦蛟O(shè)計(jì)方法的重要途徑之一。
(8)在C++語(yǔ)言中,類是支持?jǐn)?shù)據(jù)封裝的工具。(√)
五、簡(jiǎn)答題
(1)什么是結(jié)構(gòu)化程序設(shè)計(jì)方法?它有哪些優(yōu)點(diǎn)和缺點(diǎn)? 【問題解答】
結(jié)構(gòu)化程序設(shè)計(jì)方法著眼于系統(tǒng)要實(shí)現(xiàn)的功能,從系統(tǒng)的輸入輸出出發(fā),分析系統(tǒng)要做哪些事情,進(jìn)而考慮如何做這些事情,自頂向下地對(duì)系統(tǒng)的功能進(jìn)行分解,來建立系統(tǒng)的功能結(jié)構(gòu)和相應(yīng)的程序模塊結(jié)構(gòu),有效地將一個(gè)較復(fù)雜的程序系統(tǒng)設(shè)計(jì)任務(wù)分解成許多易于控制和處理的子任務(wù),便于開發(fā)和維護(hù)。隨著程序規(guī)模與復(fù)雜性的增長(zhǎng),這種面向過程的結(jié)構(gòu)化程序設(shè)計(jì)方法存在明顯的不足之處。首先是數(shù)據(jù)安全性問題。由于數(shù)據(jù)被每個(gè)模塊所共用,因此是不安全的,一旦出錯(cuò),很難查明原因。其次是可維護(hù)性及可重用性差。它把數(shù)據(jù)結(jié)構(gòu)和算法分離為相互獨(dú)立的實(shí)體,一旦數(shù)據(jù)結(jié)構(gòu)需要改變時(shí),常常要涉及整個(gè)程序,修改工作量極大并容易產(chǎn)生新的錯(cuò)誤。每一種相對(duì)于老問題的新方法都要帶來額外的開銷。另外,圖形用戶界面的應(yīng)用程序,很難用過程來描述和實(shí)現(xiàn),開發(fā)和維護(hù)也都很困難。
(2)什么是面向?qū)ο蟪绦蛟O(shè)計(jì)方法?它有哪些優(yōu)點(diǎn)? 【問題解答】
面向?qū)ο蟮某绦蛟O(shè)計(jì)方法中,將程序設(shè)計(jì)為一組相互協(xié)作的對(duì)象而不是一組相互協(xié)作的函數(shù)。在程序中,屬性用數(shù)據(jù)表示,用來描述對(duì)象靜態(tài)特征; 行為用程序代碼實(shí)現(xiàn),用來描述對(duì)象動(dòng)態(tài)特征??梢姡诿嫦?qū)ο蟮某绦蛟O(shè)計(jì)方法中,對(duì)象是數(shù)據(jù)結(jié)構(gòu)和算法的封裝體。對(duì)象之間存在各種聯(lián)系,它們之間通過消息進(jìn)行通信。程序可表示為:
程序=對(duì)象+消息
在面向?qū)ο蟪绦蛟O(shè)計(jì)中應(yīng)著重于類的設(shè)計(jì)。類正是面向?qū)ο笳Z(yǔ)言的基本程序模塊,通過類的設(shè)計(jì)來完成實(shí)體的建模任務(wù)。類通過一個(gè)簡(jiǎn)單的外部接口與外界發(fā)生關(guān)系。一個(gè)類中的操作不會(huì)處理到另一個(gè)類中的數(shù)據(jù),這樣程序模塊的獨(dú)立性、數(shù)據(jù)的安全性就有了良好的保障。程序的執(zhí)行取決于事件發(fā)生的順序,由順序產(chǎn)生的消息來驅(qū)動(dòng)程序的執(zhí)行。不必預(yù)先確定消息產(chǎn)生的順序,更符合客觀世界的實(shí)際。并且面向?qū)ο蟪绦蛟O(shè)計(jì)方法提供了軟件重用、解決大問題和復(fù)雜問題的有效途徑,具有抽象性、封裝性、繼承性和多態(tài)性等特點(diǎn)。
(3)結(jié)構(gòu)化程序設(shè)計(jì)方法與面向?qū)ο蟪绦蛟O(shè)計(jì)方法在對(duì)待數(shù)據(jù)結(jié)構(gòu)和算法關(guān)系上有 什么不同? 【問題解答】
結(jié)構(gòu)化程序設(shè)計(jì)方法中,把數(shù)據(jù)結(jié)構(gòu)和算法分離為相互獨(dú)立的實(shí)體; 而在面向?qū)ο蟪绦蛟O(shè)計(jì)中,數(shù)據(jù)結(jié)構(gòu)和算法封裝在一起,結(jié)合成一個(gè)獨(dú)立的單位,即對(duì)象,并盡可能隱蔽對(duì)象的內(nèi)部細(xì)節(jié)。對(duì)象的私有屬性只能由這個(gè)對(duì)象的行為來讀取和修改,與外部的聯(lián)系通過公有行為充當(dāng)外部接口。第 2 章
從C到C++
面向?qū)ο蟪绦蛟O(shè)計(jì)教程(C++語(yǔ)言描述)題解與課程設(shè)計(jì)指導(dǎo)
第2章 從C到 C++
一、名詞解釋
引用內(nèi)聯(lián)函數(shù)重載函數(shù) 【問題解答】
所謂引用就是給對(duì)象取一個(gè)別名,使用該別名可以存取該對(duì)象。換句話說是使新對(duì)象和原對(duì)象共用一個(gè)地址。
內(nèi)聯(lián)函數(shù)是使用inline關(guān)鍵字聲明的函數(shù)。
重載函數(shù)指在同一個(gè)作用域內(nèi)名字相同而參數(shù)不同的函數(shù)。重載函數(shù)通常用來對(duì)具有相似行為而數(shù)據(jù)類型或數(shù)據(jù)個(gè)數(shù)不同的操作提供—個(gè)通用的名稱。
二、填空題
(1)一般情況下,用C++語(yǔ)言編寫的程序是由函數(shù)加上類組成的。(2)C++有兩種注釋符號(hào),一種是//,另一種是 /*??*/。
(3)使用C++風(fēng)格的輸入輸出,在程序中必須包含頭文件“iostream”。(4)cin是預(yù)定義的標(biāo)準(zhǔn)輸入流對(duì)象,>>是輸入操作符,也稱提取運(yùn)算符。(5)cout是預(yù)定義的標(biāo)準(zhǔn)輸出流對(duì)象,<<是輸出操作符,也稱插入運(yùn)算符。(6)指針的值是它所指向那個(gè)對(duì)象的地址值。指針的類型是它所指向?qū)ο蟮念愋?。指針的?nèi)容便是它所指向?qū)ο蟮闹怠?/p>
(7)C++使用運(yùn)算符&來定義一個(gè)引用,對(duì)引用的存取都是對(duì)它所引用的對(duì)象的存取。(8)當(dāng)一個(gè)函數(shù)調(diào)用出現(xiàn)在函數(shù)定義之前時(shí),必須先用函數(shù)原型對(duì)函數(shù)進(jìn)行聲明。
(9)C++有值傳遞和引用傳遞兩種參數(shù)傳遞機(jī)制。(10)使用關(guān)鍵字inline聲明的函數(shù)稱為內(nèi)聯(lián)函數(shù)。(11)運(yùn)算符new用于進(jìn)行動(dòng)態(tài)內(nèi)存分配,運(yùn)算符delete用于釋放動(dòng)態(tài)分配的內(nèi)存。
(12)下面程序的輸出結(jié)果為x=10,y=10;
x=100,y=100。
#include
using namespace std;
int main()
{
int x=10,&y=x;
cout<<“x=”< int *p=&y; *p=100; cout<<“x=”< return 0; } 三、選擇題(至少選一個(gè),可以多選) (1)在整型指針變量p2、p3的定義中,錯(cuò)誤的是(A)。A.int p1,*p2,p3;B.int*p2,p1,*p3;C.int p1,*p2=&p1,*p3;D.int*p2,p1,*p3=&p1;【結(jié)果分析】 指針定義的具體格式如下所示: <類型> *<指針名1>,*<指針名2>,?; (2)若有定義“double xx=3.14,*pp=&xx; ”,則*pp等價(jià)于(A.&xxB.*xxC.3.14D.xx 【結(jié)果分析】 pp指向xx所在的內(nèi)存單元,這樣*pp和xx等價(jià)。(3)下面對(duì)引用的描述中(C)是錯(cuò)誤的。A.引用是某個(gè)變量或?qū)ο蟮膭e名 B.建立引用時(shí),要對(duì)它初始化)。C C.對(duì)引用初始化可以使用任意類型的變量 D.引用與其代表的對(duì)象具有相同的地址 【結(jié)果分析】 所謂引用就是給對(duì)象取一個(gè)別名,使用該別名可以存取該對(duì)象,所以對(duì)引用初始化必須使用同類型的變量。 (4)函數(shù)沒有返回值的時(shí)候,應(yīng)該選擇(A)的函數(shù)類型。A.void B.int C.不確定 D.float(5)在函數(shù)的定義格式中,下面各組成部分中,(D)是可以省略的。A.函數(shù)名 B.函數(shù)體 C.返回值類型 D.函數(shù)參數(shù) 【結(jié)果分析】 函數(shù)的定義可以缺省形式參數(shù),此時(shí)稱為無參函數(shù)。 (6)對(duì)重載的函數(shù)來說,下面敘述不正確的是(D)。A.參數(shù)的類型不同 B.參數(shù)的順序不同 C.參數(shù)的個(gè)數(shù)不同 D.參數(shù)的個(gè)數(shù)、類型、順序都相同,但函數(shù)的返回值類型不同 【結(jié)果分析】 對(duì)重載的函數(shù)來說,編譯系統(tǒng)將根據(jù)函數(shù)參數(shù)的類型和個(gè)數(shù)來判斷使用哪一個(gè)函數(shù),所以重載函數(shù)參數(shù)的個(gè)數(shù)、類型、順序不能都相同。 (7)下列有關(guān)設(shè)置函數(shù)參數(shù)默認(rèn)值的描述中,(D)是正確的。A.對(duì)設(shè)置函數(shù)參數(shù)默認(rèn)值的順序沒有任何規(guī)定 B.函數(shù)具有一個(gè)參數(shù)時(shí)不能設(shè)置默認(rèn)值 C.默認(rèn)參數(shù)要設(shè)置在函數(shù)的原型中,而不能設(shè)置在函數(shù)的定義語(yǔ)句中 D.設(shè)置默認(rèn)參數(shù)可使用表達(dá)式,但表達(dá)式中不可用局部變量 【結(jié)果分析】 在C++中,在函數(shù)原型中可以為一個(gè)或多個(gè)參數(shù)指定默認(rèn)值。對(duì)函數(shù)參數(shù)設(shè)置默認(rèn)值要注意以下幾點(diǎn)。◆若沒有聲明函數(shù)原型,參數(shù)的默認(rèn)值可在函數(shù)定義的頭部進(jìn)行設(shè)置,否則必須在函數(shù)原型中進(jìn)行設(shè)置。 ◆在一個(gè)指定了默認(rèn)值的參數(shù)右邊不能出現(xiàn)沒有指定默認(rèn)值的參數(shù)?!粼O(shè)置默認(rèn)參數(shù)可使用表達(dá)式,但表達(dá)式中不可用局部變量。(8)下面說法正確的是(BC)。A.所有的函數(shù)都可以說明為內(nèi)聯(lián)函數(shù) B.具有循環(huán)語(yǔ)句、switch語(yǔ)句的函數(shù)不能說明為內(nèi)聯(lián)函數(shù) C.使用內(nèi)聯(lián)函數(shù),可以加快程序執(zhí)行的速度,但會(huì)增加程序代碼的大小 D.使用內(nèi)聯(lián)函數(shù),可以減小程序代碼大小,但使程序執(zhí)行的速度減慢 【結(jié)果分析】 內(nèi)聯(lián)函數(shù)主要是解決程序的運(yùn)行效率問題。在程序編譯時(shí),編譯系統(tǒng)將程序中出現(xiàn)內(nèi)聯(lián)函數(shù)調(diào)用的地方用函數(shù)體進(jìn)行替換,進(jìn)而減少了程序運(yùn)行的時(shí)間,但會(huì)增加程序代碼的大小。它是以空間換取時(shí)間,因此內(nèi)聯(lián)函數(shù)適用于功能不太復(fù)雜,但要求被頻繁調(diào)用的函數(shù)。 (9)一個(gè)函數(shù)功能不太復(fù)雜,但要求被頻繁調(diào)用,應(yīng)選用(A)。A.內(nèi)聯(lián)函數(shù) B.重載函數(shù) C.遞歸函數(shù) D.嵌套函數(shù)(10)C++對(duì)C語(yǔ)言做了很多改進(jìn),下列描述中使得C語(yǔ)言發(fā)生了質(zhì)變,即從面向過程變成面向?qū)ο蟮氖牵―)。A.增加了一些新的運(yùn)算符 B.允許函數(shù)重載,并允許設(shè)置默認(rèn)參數(shù) C.規(guī)定函數(shù)說明必須用原型 D.引進(jìn)了類和對(duì)象的概念 【結(jié)果分析】 面向?qū)ο?對(duì)象+類+繼承+消息+多態(tài) 四、判斷題 (1)C++程序中,不得使用沒有定義或說明的變量。(√)(2)使用const說明常量時(shí),可以不必指出類型。(×)【結(jié)果分析】 如果用const 定義的是一個(gè)整型常量,則類型說明符int可以省略。(3)引用被創(chuàng)建時(shí)可以用任意變量進(jìn)行初始化。(×)【結(jié)果分析】 對(duì)引用初始化必須使用同類型的變量。 (4)一個(gè)返回引用的調(diào)用函數(shù)可以作為左值。(√)(5)函數(shù)可以沒有參數(shù),也可以沒有返回值。(√)(6)沒有參數(shù)的兩個(gè)函數(shù)是不能重載的。(√)(7)函數(shù)可設(shè)置默認(rèn)參數(shù),但不允許將一個(gè)函數(shù)的所有參數(shù)都設(shè)置為默認(rèn)參數(shù)。(×) 【結(jié)果分析】 函數(shù)可設(shè)置默認(rèn)參數(shù),且允許將一個(gè)函數(shù)的所有參數(shù)都設(shè)置為默認(rèn)參數(shù)。(8)運(yùn)算符new分配的空間由運(yùn)算符delete釋放。(√) 五、簡(jiǎn)答題 (1)名字空間的用途是什么? 【問題解答】 名字空間用來防止命名的沖突。(2)引用有何用處? 【問題解答】 除了獨(dú)立引用外,在C++程序中,引用的主要用途是用作函數(shù)參數(shù)和函數(shù)的返回值。 (3)比較值調(diào)用和引用調(diào)用的相同點(diǎn)與不同點(diǎn)?!締栴}解答】 在值調(diào)用機(jī)制中,作為實(shí)參的表達(dá)式的值被復(fù)制到由對(duì)應(yīng)的形參名所標(biāo)識(shí)的一個(gè)對(duì)象中,作為形參的初始值。函數(shù)體對(duì)形參的訪問、修改都是在這個(gè)標(biāo)識(shí)對(duì)象上操作的,與實(shí)參無關(guān),即數(shù)據(jù)的傳遞是單向的。 使用引用作函數(shù)的形參時(shí),調(diào)用函數(shù)的實(shí)參要用變量名。實(shí)參傳遞給形參,相當(dāng)于在被調(diào)用函數(shù)中使用了實(shí)參的別名。于是,在被調(diào)用函數(shù)中對(duì)形參的操作實(shí)質(zhì)是對(duì)實(shí)參的直接操作,即數(shù)據(jù)的傳遞是雙向的。(4)內(nèi)聯(lián)函數(shù)有什么作用?它有哪些特點(diǎn)? 【問題解答】 內(nèi)聯(lián)函數(shù)是使用inline關(guān)鍵字聲明的函數(shù)。在程序編譯時(shí),編譯系統(tǒng)將程序中出現(xiàn)內(nèi)聯(lián)函數(shù)調(diào)用的地方用函數(shù)體進(jìn)行替換,進(jìn)而減少了程序運(yùn)行的時(shí)間。使用內(nèi)聯(lián)函數(shù)應(yīng)注意以下幾點(diǎn)?!暨f歸函數(shù)不能定義為內(nèi)聯(lián)函數(shù)。 ◆內(nèi)聯(lián)函數(shù)一般適合于不含有switch和while等復(fù)雜的結(jié)構(gòu)且只有1~5條語(yǔ)句的小函數(shù),否則編譯系統(tǒng)將該函數(shù)視為普通函數(shù)。 ◆內(nèi)聯(lián)函數(shù)只能先定義后使用,否則編譯系統(tǒng)也將該函數(shù)視為普通函數(shù)。◆對(duì)內(nèi)聯(lián)函數(shù)也不能進(jìn)行異常接口聲明。(5)函數(shù)原型中的參數(shù)名與函數(shù)定義中的參數(shù)名以及函數(shù)調(diào)用中的參數(shù)名必須一致嗎? 【問題解答】 不必一致。所有的參數(shù)是根據(jù)位置和類型而不是名字來區(qū)分的。(6)重載函數(shù)時(shí)通過什么來區(qū)分? 【問題解答】 編譯系統(tǒng)將根據(jù)函數(shù)參數(shù)的類型和個(gè)數(shù)來判斷使用哪一個(gè)函數(shù)。 六、程序分析題(寫出程序的輸出結(jié)果,并分析結(jié)果) #include using namespace std; int main() { int num=50; int& ref=num; ref=ref+10; cout<<“num=”< num=num+40; cout<<“ref=”< return 0;} 【輸出結(jié)果】 num=60 ref=100 【問題分析】 本題主要考查引用的含義?!窘Y(jié)果分析】 程序首先定義一個(gè)int類型的對(duì)象num,并給它賦初始值50。然后又定義了一個(gè)int類型的引用ref,并將它和num相聯(lián)系。這樣,無論是對(duì)num還是對(duì)ref進(jìn)行操作,實(shí)際上都是對(duì)那個(gè)一開始放著50的物理單元的內(nèi)容進(jìn)行操作。 七、程序設(shè)計(jì)題 寫出一個(gè)完整的C++程序,使用系統(tǒng)函數(shù)pow(x,y)計(jì)算xy的值,注意包含頭文件cmath?!締栴}分析】 本題主要考查簡(jiǎn)單的輸入輸出和標(biāo)準(zhǔn)庫(kù)函數(shù)的調(diào)用方法?!窘忸}思路】 ① 由于要用到系統(tǒng)函數(shù)pow(x,y),所以要包含頭文件cmath。 ② 要計(jì)算xy的值,首先必須知道x和y的值。為了程序的通用性,最好通過交互的方式輸入x和y的值。【參考程序】 // xt2_1.cpp #include #include using namespace std; int main() { float x,y; cout<<“please input 2 floats to x,y:”; cin>>x>>y; float z=pow(x,y); cout<<“pow(”< return 0;} 【輸出結(jié)果】 please input 2 floats to x,y:3.1 2 pow(3.1,2)=9.61 第 3 章 類與對(duì)象 面向?qū)ο蟪绦蛟O(shè)計(jì)教程(C++語(yǔ)言描述)題解與課程設(shè)計(jì)指導(dǎo) 第3章 類 與 對(duì) 象 一、填空題(1)類定義中關(guān)鍵字private、public和protected以后的成員的訪問權(quán)限分別是私有、公有和保護(hù)。如果沒有使用關(guān)鍵字,則所有成員默認(rèn)定義為private權(quán)限。具有public訪問權(quán)限的數(shù)據(jù)成員才能被不屬于該類的函數(shù)所直接訪問。(2)定義成員函數(shù)時(shí),運(yùn)算符“∷”是作用域運(yùn)算符,“MyClass∷”用于表明其后的成員函數(shù)是在“MyClass類”中說明的。 (3)在程序運(yùn)行時(shí),通過為對(duì)象分配內(nèi)存來創(chuàng)建對(duì)象。在創(chuàng)建對(duì)象時(shí),使用類作為樣板,故稱對(duì)象為類的實(shí)例。 (4)假定Dc是一個(gè)類,則執(zhí)行“Dc a[10],b(2)”語(yǔ)句時(shí),系統(tǒng)自動(dòng)調(diào)用該類構(gòu)造函數(shù)的次數(shù)為11?!窘Y(jié)果分析】 創(chuàng)建10個(gè)數(shù)組元素需調(diào)用構(gòu)造函數(shù)10次,創(chuàng)建對(duì)象b需調(diào)用構(gòu)造函數(shù)1次,所以系統(tǒng)自動(dòng)調(diào)用該類構(gòu)造函數(shù)的總次數(shù)為11。 (5)對(duì)于任意一個(gè)類,析構(gòu)函數(shù)的個(gè)數(shù)最多為1個(gè)。 (6)delete運(yùn)算符通常用于實(shí)現(xiàn)釋放該類對(duì)象中指針成員所指向的動(dòng)態(tài)存儲(chǔ)空間的任務(wù)。(7)C++程序的內(nèi)存格局通常分為4個(gè)區(qū): 數(shù)據(jù)區(qū)、代碼區(qū)、棧區(qū)和堆區(qū)。(8)數(shù)據(jù)定義為全局變量,破壞了數(shù)據(jù)的 封裝性; 較好的解決辦法是將所要共享的數(shù)據(jù)定義為類的 靜態(tài)成員。 (9)靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)可由 任意訪問權(quán)限許可的函數(shù)訪問。(10)友元函數(shù)和 友元類統(tǒng)稱為友元。(11)友元的正確使用能提高程序的效率,但破壞了類的封裝性和數(shù)據(jù)的隱蔽性。(12)若需要把一個(gè)類A定義為一個(gè)類B的友元類,則應(yīng)在類B的定義中加入一條語(yǔ)句: friend class A。 二、選擇題(至少選一個(gè),可以多選)(1)以下不屬于類訪問權(quán)限的是(B)。A.public B.staticC.protectedD.private 【結(jié)果分析】 類的訪問權(quán)限有public、protected 和private。(2)有關(guān)類的說法不正確的是(BC)。A.類是一種用戶自定義的數(shù)據(jù)類型 B.只有類的成員函數(shù)才能訪問類的私有數(shù)據(jù)成員 C.在類中,如不做權(quán)限說明,所有的數(shù)據(jù)成員都是公有的 D.在類中,如不做權(quán)限說明,所有的數(shù)據(jù)成員都是私有的 【結(jié)果分析】 類是一種用戶自定義的數(shù)據(jù)類型,類中成員均具有一種訪問權(quán)限。關(guān)鍵字public、protected 和private以后的成員的訪問權(quán)限分別是公有、保護(hù)和私有的,所有成員默認(rèn)定義為private的。 私有成員是被隱藏的數(shù)據(jù),只有該類的成員函數(shù)或友元函數(shù)才可以訪問它。(3)在類定義的外部,可以被任意函數(shù)訪問的成員有(C)。A.所有類成員 B.private或protected的類成員 C.public的類成員 D.public或private的類成員 【結(jié)果分析】 類是一種用戶自定義的數(shù)據(jù)類型,類中成員均具有一種訪問權(quán)限。公有成員定義了類的外部接口。私有成員是被隱藏的數(shù)據(jù),只有該類的成員函數(shù)或友元函數(shù)才可以引用它。保護(hù)成員具有公有成員和私有成員的雙重性質(zhì),可以被該類或派生類的成員函數(shù)或友元函數(shù)引用??梢娫陬惗x的外部,可以被任意函數(shù)訪問的成員是public的類成員。 (4)關(guān)于類和對(duì)象的說法(C)是錯(cuò)誤的。A.對(duì)象是類的一個(gè)實(shí)例 B.任何一個(gè)對(duì)象只能屬于一個(gè)具體的類 C.一個(gè)類只能有一個(gè)對(duì)象 D.類與對(duì)象的關(guān)系和數(shù)據(jù)類型與變量的關(guān)系相似 【結(jié)果分析】 C++語(yǔ)言的類就是一種用戶自己定義的數(shù)據(jù)類型,類和對(duì)象的關(guān)系就相當(dāng)于基本數(shù)據(jù)類型與它的變量的關(guān)系,所以任何一個(gè)對(duì)象只能屬于一個(gè)具體的類,但一個(gè)類可以有多個(gè)對(duì)象。(5)設(shè)MClass是一個(gè)類,dd是它的一個(gè)對(duì)象,pp是指向dd的指針,cc是dd的引用,則對(duì)成員的訪問,對(duì)象dd可以通過(B)進(jìn)行,指針pp可以通過(D)進(jìn)行,引用cc可以通過(B)進(jìn)行。 A.∷ B..C.& D.->(6)關(guān)于成員函數(shù)的說法中不正確的是(C)。A.成員函數(shù)可以無返回值 B.成員函數(shù)可以重載 C.成員函數(shù)一定是內(nèi)聯(lián)函數(shù) D.成員函數(shù)可以設(shè)定參數(shù)的默認(rèn)值 【結(jié)果分析】 與普通函數(shù)不同的是,成員函數(shù)是屬于某個(gè)類的。成員函數(shù)的實(shí)現(xiàn),可以放在類體內(nèi),也可以放在類體外。在類體外實(shí)現(xiàn)的成員函數(shù)不再是內(nèi)聯(lián)函數(shù)。(7)下面對(duì)構(gòu)造函數(shù)的不正確描述是(B)。A.系統(tǒng)可以提供默認(rèn)的構(gòu)造函數(shù) B.構(gòu)造函數(shù)可以有參數(shù),所以也可以有返回值 C.構(gòu)造函數(shù)可以重載 D.構(gòu)造函數(shù)可以設(shè)置默認(rèn)參數(shù) 【結(jié)果分析】 構(gòu)造函數(shù)不能指定返回類型,即使是void類型也不可以,當(dāng)然不可能有返回值。(8)假定A是一個(gè)類,那么執(zhí)行語(yǔ)句“A a,b(3),*p; ”調(diào)用了(B)次構(gòu)造函數(shù)。 A.1 B.2 C.3 D.4 【結(jié)果分析】 聲明指針是不會(huì)調(diào)用構(gòu)造函數(shù)的。 (9)下面對(duì)析構(gòu)函數(shù)的正確描述是(AC)。A.系統(tǒng)可以提供默認(rèn)的析構(gòu)函數(shù) B.析構(gòu)函數(shù)必須由用戶定義 C.析構(gòu)函數(shù)沒有參數(shù) D.析構(gòu)函數(shù)可以設(shè)置默認(rèn)參數(shù) 【結(jié)果分析】 析構(gòu)函數(shù)的作用是在對(duì)象消失時(shí)執(zhí)行一項(xiàng)清理任務(wù)。如果一個(gè)類中沒有定義析構(gòu)函數(shù),系統(tǒng)將自動(dòng)生成一個(gè)默認(rèn)析構(gòu)函數(shù)。析構(gòu)函數(shù)沒有參數(shù),當(dāng)然不可能設(shè)置默認(rèn)參數(shù)。 (10)類的析構(gòu)函數(shù)是(D)時(shí)被調(diào)用的。 A.類創(chuàng)建 B.創(chuàng)建對(duì)象 C.引用對(duì)象 D.釋放對(duì)象 (11)創(chuàng)建一個(gè)類的對(duì)象時(shí),系統(tǒng)自動(dòng)調(diào)用(B); 撤銷對(duì)象時(shí),系統(tǒng)自動(dòng)調(diào)用(C)。 A.成員函數(shù) B.構(gòu)造函數(shù) C.析構(gòu)函數(shù) D.復(fù)制構(gòu)造函數(shù)(12)通??截悩?gòu)造函數(shù)的參數(shù)是(C)。 A.某個(gè)對(duì)象名 B.某個(gè)對(duì)象的成員名 C.某個(gè)對(duì)象的引用名 D.某個(gè)對(duì)象的指針名(13)關(guān)于this指針的說法正確的是(B)。 A.this指針必須顯式說明B.當(dāng)創(chuàng)建一個(gè)對(duì)象后,this指針就指向該對(duì)象 C.成員函數(shù)擁有this指針D.靜態(tài)成員函數(shù)擁有this指針?!窘Y(jié)果分析】 this指針是由C++編譯器自動(dòng)產(chǎn)生且較常用的一個(gè)隱含對(duì)象指針,它不能被顯式聲明。當(dāng)創(chuàng)建一個(gè)對(duì)象時(shí),this指針就初始化指向該對(duì)象。但只有非靜態(tài)成員函數(shù)才擁有this指針,并通過該指針來處理對(duì)象。(14)下列關(guān)于子對(duì)象的描述中,(B)是錯(cuò)誤的。A.子對(duì)象是類的一種數(shù)據(jù)成員,它是另一個(gè)類的對(duì)象 B.子對(duì)象可以是自身類的對(duì)象 C.對(duì)子對(duì)象的初始化要包含在該類的構(gòu)造函數(shù)中 D.一個(gè)類中能含有多個(gè)子對(duì)象作其成員 【結(jié)果分析】 子對(duì)象不可以是自身類的對(duì)象。 (15)對(duì)new運(yùn)算符的下列描述中,(B)是錯(cuò)誤的。A.它可以動(dòng)態(tài)創(chuàng)建對(duì)象和對(duì)象數(shù)組 B.用它創(chuàng)建對(duì)象數(shù)組時(shí)必須指定初始值 C.用它創(chuàng)建對(duì)象時(shí)要調(diào)用構(gòu)造函數(shù) D.用它創(chuàng)建的對(duì)象數(shù)組可以使用運(yùn)算符delete來一次釋放 【結(jié)果分析】 使用運(yùn)算符new創(chuàng)建對(duì)象數(shù)組的格式如下: new <類型說明符> [<算術(shù)表達(dá)式>] 其中,<算術(shù)表達(dá)式>給出數(shù)組的大小,后面不能再跟構(gòu)造函數(shù)參數(shù),所以用它創(chuàng)建對(duì)象數(shù)組時(shí)不能指定初始值。 (16)對(duì)delete運(yùn)算符的下列描述中,(D)是錯(cuò)誤的。A.用它可以釋放用new運(yùn)算符創(chuàng)建的對(duì)象和對(duì)象數(shù)組 B.用它釋放一個(gè)對(duì)象時(shí),它作用于一個(gè)new所返回的指針 C.用它釋放一個(gè)對(duì)象數(shù)組時(shí),它作用的指針名前須加下標(biāo)運(yùn)算符[ ] D.用它可一次釋放用new運(yùn)算符創(chuàng)建的多個(gè)對(duì)象 【結(jié)果分析】 用delete一次只能釋放用new創(chuàng)建的1個(gè)對(duì)象,但可釋放一個(gè)對(duì)象數(shù)組。(17)關(guān)于靜態(tài)數(shù)據(jù)成員,下面敘述不正確的是(C)。A.使用靜態(tài)數(shù)據(jù)成員,實(shí)際上是為了消除全局變量 B.可以使用“對(duì)象名.靜態(tài)成員”或者“類名∷靜態(tài)成員”來訪問靜態(tài)數(shù)據(jù)成員 C.靜態(tài)數(shù)據(jù)成員只能在靜態(tài)成員函數(shù)中引用 D.所有對(duì)象的靜態(tài)數(shù)據(jù)成員占用同一內(nèi)存單元 【結(jié)果分析】 靜態(tài)數(shù)據(jù)成員可以在靜態(tài)成員函數(shù)中引用,也可以在非靜態(tài)成員函數(shù)中引用。(18)對(duì)靜態(tài)數(shù)據(jù)成員的不正確描述是(CD)。A.靜態(tài)成員不屬于對(duì)象,是類的共享成員 B.靜態(tài)數(shù)據(jù)成員要在類外定義和初始化 C.調(diào)用靜態(tài)成員函數(shù)時(shí)要通過類或?qū)ο蠹せ?,所以靜態(tài)成員函數(shù)擁有this指針 D.只有靜態(tài)成員函數(shù)可以操作靜態(tài)數(shù)據(jù)成員 【結(jié)果分析】 this指針是一個(gè)局部量,局部于某個(gè)對(duì)象,而靜態(tài)成員函數(shù)是屬于整個(gè)類而不是某個(gè)對(duì)象,它沒有this指針。靜態(tài)成員函數(shù)和非靜態(tài)成員函數(shù)均可操作靜態(tài)數(shù)據(jù)成員。 (19)下面的選項(xiàng)中,靜態(tài)成員函數(shù)不能直接訪問的是(D)。A.靜態(tài)數(shù)據(jù)成員 B.靜態(tài)成員函數(shù) C.類以外的函數(shù)和數(shù)據(jù) D.非靜態(tài)數(shù)據(jù)成員 【結(jié)果分析】 由于靜態(tài)成員函數(shù)沒有this指針,它只能直接訪問該類的靜態(tài)數(shù)據(jù)成員、靜態(tài)成員函數(shù)和類以外的函數(shù)和數(shù)據(jù),訪問類中的非靜態(tài)數(shù)據(jù)成員必須通過參數(shù)傳遞方式得到對(duì)象名,然后通過對(duì)象名來訪問。 (20)在類的定義中,引入友元的原因是(A)。 A.提高效率 B.深化使用類的封裝性 C.提高程序的可讀性 D.提高數(shù)據(jù)的隱蔽性 【結(jié)果分析】 友元的作用主要是為了提高效率和方便編程,但友元破壞了類的封裝性和隱蔽性,使用時(shí)要權(quán)衡利弊。 (21)友元類的聲明方法是(A)。 A.friend class<類名>; B.youyuan class<類名>; C.class friend<類名>; D.friends class<類名>;(22)下面對(duì)友元的錯(cuò)誤描述是(D)。A.關(guān)鍵字friend用于聲明友元 B.一個(gè)類中的成員函數(shù)可以是另一個(gè)類的友元 C.友元函數(shù)訪問對(duì)象的成員不受訪問特性影響 D.友元函數(shù)通過this指針訪問對(duì)象成員 【結(jié)果分析】 友元函數(shù)是一個(gè)放在類中的普通函數(shù),它沒有this指針。(23)下面選項(xiàng)中,(C)不是類的成員函數(shù)。 A.構(gòu)造函數(shù) B.析構(gòu)函數(shù) C.友元函數(shù) D.拷貝構(gòu)造函數(shù) 三、簡(jiǎn)答題 (1)類與對(duì)象有什么關(guān)系? 【問題解答】 類是一種用戶自己定義的數(shù)據(jù)類型,和其他數(shù)據(jù)類型不同的是,組成這種類型的不僅可以有數(shù)據(jù),而且可以有對(duì)數(shù)據(jù)進(jìn)行操作的函數(shù)。程序員可以使用這個(gè)新類型在程序中聲明新的變量,具有類類型的變量稱為對(duì)象。創(chuàng)建對(duì)象時(shí),類被用做樣板,對(duì)象稱為類的實(shí)例。 (2)類定義的一般形式是什么?其成員有哪幾種訪問權(quán)限? 【問題解答】 定義類一般形式為: class類名{ public: <公有數(shù)據(jù)和函數(shù)> protected: <保護(hù)數(shù)據(jù)和函數(shù)> private: <私有數(shù)據(jù)和函數(shù)> }; 訪問權(quán)限共有3種: 分別是公有(public)、保護(hù)(protected)和私有(private)。(3)類的實(shí)例化是指創(chuàng)建類的對(duì)象還是定義類? 【問題解答】 指創(chuàng)建類的對(duì)象。 (4)什么是this指針?它的主要作用是什么? 【問題解答】 this指針是C++語(yǔ)言為成員函數(shù)提供的一個(gè)隱含對(duì)象指針,它不能被顯式聲明。this指針是一個(gè)局部量,局部于某個(gè)對(duì)象。不同的對(duì)象調(diào)用同一個(gè)成員函數(shù)時(shí),編譯器根據(jù)this指針來確定應(yīng)該引用哪一個(gè)對(duì)象的數(shù)據(jù)成員。(5)什么叫做拷貝構(gòu)造函數(shù)?拷貝構(gòu)造函數(shù)何時(shí)被調(diào)用? 【問題解答】 拷貝構(gòu)造函數(shù)是一種特殊的構(gòu)造函數(shù),它的作用是用一個(gè)已經(jīng)存在的對(duì)象去初始化另一個(gè)對(duì)象。為了保證所引用的對(duì)象不被修改,通常把引用參數(shù)聲明為const參數(shù)。 在以下3種情況下,拷貝構(gòu)造函數(shù)都會(huì)被自動(dòng)調(diào)用: ◆當(dāng)用類的一個(gè)對(duì)象去初始化該類的另一個(gè)對(duì)象時(shí); ◆當(dāng)函數(shù)的形參是類的對(duì)象,進(jìn)行形參和實(shí)參結(jié)合時(shí); ◆當(dāng)函數(shù)的返回值是類的對(duì)象,函數(shù)執(zhí)行完成返回調(diào)用者時(shí)。 四、程序分析題(寫出程序的輸出結(jié)果,并分析結(jié)果)(1) #include using namespace std; class Test { private: int num;public: Test();// 默認(rèn)構(gòu)造函數(shù) Test(int n);// 帶一個(gè)參數(shù)構(gòu)造函數(shù) }; Test∷Test() { cout<<“Init defa”< num=0;} Test∷Test(int n) { cout<<“Init”<<“ ”< num=n;} int main() { Test x[2];// 語(yǔ)句1 Test y(15);// 語(yǔ)句2 return 0;} 【輸出結(jié)果】 Init defa Init defa Init 15 【問題分析】 本題主要考查構(gòu)造函數(shù)的調(diào)用時(shí)機(jī)和構(gòu)造函數(shù)的匹配問題。【要點(diǎn)提示】 構(gòu)造函數(shù)在創(chuàng)建對(duì)象時(shí)被自動(dòng)調(diào)用,具體調(diào)用哪個(gè)構(gòu)造函數(shù)將由編譯系統(tǒng)根據(jù)重載函數(shù)的匹配原則來確定?!窘Y(jié)果分析】 ① 程序聲明了2個(gè)對(duì)象x和y,類中有2個(gè)構(gòu)造函數(shù)。 ② 程序首先執(zhí)行語(yǔ)句1,創(chuàng)建對(duì)象x,調(diào)用默認(rèn)構(gòu)造函數(shù)。由于對(duì)象x是對(duì)象數(shù)組,每個(gè)數(shù)組元素被創(chuàng)建時(shí)都要調(diào)用構(gòu)造函數(shù),所以默認(rèn)構(gòu)造函數(shù)被調(diào)用了2次,輸出第1、2行結(jié)果。程序接著執(zhí)行語(yǔ)句2,創(chuàng)建對(duì)象y,調(diào)用帶一個(gè)參數(shù)的構(gòu)造函數(shù),輸出第3行結(jié)果。(2) #include using namespace std; class Xx { private: int num; public: Xx(int x){num=x;} // 構(gòu)造函數(shù) ~Xx(){cout<<“dst ”< }; int main() { Xx w(5);// 語(yǔ)句1 cout<<“Exit main”< return 0;} 【輸出結(jié)果】 Exit main dst 5 【問題分析】 本題主要考查析構(gòu)函數(shù)的調(diào)用時(shí)機(jī)?!疽c(diǎn)提示】 析構(gòu)函數(shù)在釋放對(duì)象時(shí)被自動(dòng)調(diào)用?!窘Y(jié)果分析】 ① 程序聲明了一個(gè)對(duì)象w。 ② 程序首先執(zhí)行語(yǔ)句1,創(chuàng)建對(duì)象w,調(diào)用構(gòu)造函數(shù),num得到初值5。程序接著執(zhí)行語(yǔ)句2,輸出第1行結(jié)果。當(dāng)程序結(jié)束時(shí),釋放對(duì)象w,析構(gòu)函數(shù)被調(diào)用,輸出第2行結(jié)果。 (3)將例3.10中的Whole類如下修改,其他部分不變,寫出輸出結(jié)果。 class Whole { public: Whole(int i);// Whole的有參構(gòu)造函數(shù) Whole(){};// Whole的無參構(gòu)造函數(shù) ~Whole();// Whole的析構(gòu)函數(shù) private: Part p1;// 子對(duì)象1 Part p2;// 子對(duì)象2 Part p3;// 子對(duì)象3 };Whole∷Whole(int i):p2(i),p1() { cout<<“Constructor of Whole”< Whole∷~Whole() { cout<<“Destructor of Whole”< 【輸出結(jié)果】 Default constructor of Part Constructor of Part,3 Default constructor of Part Constructor of Whole Destructor of Whole Destructor of Part,0 Destructor of Part,3 Destructor of Part,0 【問題分析】 本題主要考查子對(duì)象初始化的方法和含有子對(duì)象時(shí)構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用順序。 【要點(diǎn)提示】 ◆當(dāng)建立X類的對(duì)象時(shí),先調(diào)用子對(duì)象的構(gòu)造函數(shù),初始化子對(duì)象,然后才執(zhí)行X類的構(gòu)造函數(shù),初始化X類中的其他成員。 ◆對(duì)子對(duì)象構(gòu)造函數(shù)的調(diào)用順序取決于這些子對(duì)象在類中的說明順序,與它們?cè)诔蓡T初始化列表中給出的順序無關(guān)。 ◆如果X類的構(gòu)造函數(shù)沒有給出成員初始化列表,表明子對(duì)象將使用默認(rèn)構(gòu)造函數(shù)進(jìn)行初始化?!粑鰳?gòu)函數(shù)的調(diào)用順序與構(gòu)造函數(shù)的調(diào)用順序正好相反?!窘Y(jié)果分析】 程序的Whole類中出現(xiàn)了類Part的3個(gè)對(duì)象p1、p2和p3,作為該類的數(shù)據(jù)成員,則p1、p2和p3被稱為子對(duì)象。當(dāng)建立Whole類的對(duì)象w時(shí),子對(duì)象p1、p2和p3被建立,相應(yīng)的構(gòu)造函數(shù)被執(zhí)行。由于p1在Whole類中先說明,所以先執(zhí)行它所使用的構(gòu)造函數(shù),即類Part的默認(rèn)構(gòu)造函數(shù),接著p2執(zhí)行它所使用的有參構(gòu)造函數(shù),緊接著初始化p3,由于Whole類構(gòu)造函數(shù)的成員初始化列表中沒有子對(duì)象p3進(jìn)行初始化的選項(xiàng),所以執(zhí)行類Part的默認(rèn)構(gòu)造函數(shù),當(dāng)所有子對(duì)象被構(gòu)造完之后,對(duì)象w的構(gòu)造函數(shù)才被執(zhí)行,從而得到前4行輸出結(jié)果,而后4行是執(zhí)行相應(yīng)析構(gòu)函數(shù)的輸出結(jié)果。(4) #include using namespace std; class Book { public: Book(int w); static int sumnum; private: int num;}; Book∷Book(int w) { num=w; sumnum-=w;} int Book∷sumnum=120;// 語(yǔ)句1 int main() { Book b1(20);// 語(yǔ)句2 Book b2(70);// 語(yǔ)句3 cout< return 0;} 【輸出結(jié)果】 【問題分析】 本題主要考查“在類的范圍內(nèi)所有對(duì)象共享靜態(tài)成員的數(shù)據(jù)”的含義?!窘Y(jié)果分析】 程序中語(yǔ)句1對(duì)靜態(tài)成員sumnum進(jìn)行初始化,sumnum得到初值120。執(zhí)行語(yǔ)句2時(shí),調(diào)用構(gòu)造函數(shù),sumnum變?yōu)?00。接著語(yǔ)句3,再調(diào)用構(gòu)造函數(shù),sumnum變?yōu)?0。 五、程序設(shè)計(jì)題 (1)聲明一個(gè)Circle類,有數(shù)據(jù)成員radius(半徑)、成員函數(shù)area(),計(jì)算圓的面積,構(gòu)造一個(gè)Circle的對(duì)象進(jìn)行測(cè)試?!締栴}分析】 本題主要考查類定義的形式、對(duì)象成員訪問和對(duì)象初始化的方法。要求理解類和構(gòu)造函數(shù)的真正含義,特別注意如何將客觀事物的屬性和行為抽象為類的成員?!窘忸}思路】 ① 題目中已給出了類的基本部分,需要增加一個(gè)構(gòu)造函數(shù)來初始化數(shù)據(jù)成員radius。 ② 為了程序的通用性,圓的半徑由鍵盤輸入?!緟⒖汲绦颉?/p> // xt3_1.cpp #include 面向?qū)ο蟪绦蛟O(shè)計(jì)大作業(yè)實(shí)驗(yàn)報(bào)告 計(jì)算機(jī)2000<4>班 周博慧 學(xué)號(hào) *** 2001年 12月 5日 一,功能介紹 程序采用C++為設(shè)計(jì)語(yǔ)言,使用VISUAL C++提供的頭文件,操作平臺(tái)基于dos平臺(tái),適用的分辨率為600*480。 程序的設(shè)計(jì)目的是為一家船工廠建立庫(kù)存清單。它能夠?qū)崿F(xiàn)的功能有: 1,輸入庫(kù)存(船,零件)的基本情況; 2,改變船或者零件的庫(kù)存量; 3,查詢現(xiàn)存的零件數(shù)量; 4,顯示庫(kù)存的基本情況。 二,基本結(jié)構(gòu) 1,類的說明 程序共定義了四個(gè)類類型,它們分別是:stock(庫(kù)存)類,part(零件)類,ship(船)類,stocklist類(庫(kù)存鏈表類)。 其中,stock作為基類被part類和ship類公有繼承,part類和ship類分別作為stock的派生類存在,兩者無其它聯(lián)系;stock-list類作為一個(gè)獨(dú)立的類而存在。 2,成員說明 stock類定義了兩類成員: A)保護(hù)成員:包括current-level(當(dāng)前庫(kù)存量)和price(價(jià)格;對(duì)于零件而言是廠商的成本;對(duì)于船而已是銷售給銷售商的價(jià)格)。 B)公有成員:包括stock();get-level();change-level();get-price();change-price();~stock()六個(gè)成員函數(shù)。 其中,get-level()返回當(dāng)前的庫(kù)存量;change-level()改變庫(kù)存量;get-price()得到庫(kù)存價(jià)格; change-price()改變商品價(jià)格;~stock()顯示目前某型號(hào)零件或某種船模型的庫(kù)存量。change-level()和~stock()被設(shè)置為虛函數(shù)。 part類除了自stock類繼承的成員以外,還定義了兩類成員,分別是: A)私有成員:reorder-level(零件的定貨量)和part-num(零件的型號(hào));在這里要求零件的型號(hào)由一個(gè)字母兩個(gè)數(shù)字組成。 B)公有成員:part();get-part();set-reorder();~part()四個(gè)成員函數(shù)。 其中,get-part()返回零件型號(hào);set-reorder()設(shè)置定貨量;~part()顯示零件型號(hào)。 ship類除了自stock類繼承的成員以外,還定義了兩類成員,分別是: A)私有成員:model(船的型號(hào),要求輸入字符);engine-size(引擎規(guī)格,要求輸入數(shù)字);max-speed(船的最高速度)。 B)公有成員:ship();get-model();~ship()三個(gè)成員函數(shù)。 其中,get-model()返回船的型號(hào),與零件型號(hào)不同,這里要求的是全字符;~ship()顯示型號(hào)名稱。 stock-list類包含了一個(gè)“指針對(duì)節(jié)點(diǎn)”類型的實(shí)例變量,程序運(yùn)行的時(shí)候,指針將接收到一個(gè)part類對(duì)象或者ship類對(duì)象的地址,它也定義了兩類成員: A)私有成員:只定義了一個(gè)返回類型為stock-node結(jié)構(gòu)(自定義的庫(kù)存結(jié)點(diǎn)結(jié)構(gòu))的指針head-ptr。 B)公有成員:包括stock-list();insert-stock();find-part();find-ship();display-list();~stock-list()五個(gè)成員函數(shù)。 其中,stock-list()把庫(kù)存清單的首地址設(shè)置為空,為以后建立庫(kù)存清單做準(zhǔn)備;insert-stock()輸入零件或者船的基本數(shù)據(jù);find-part()查找零件數(shù)據(jù);find-ship()查找船數(shù)據(jù);display-list顯示庫(kù)存情況;~stock-list()釋放舊地址占用的空間。 3,結(jié)構(gòu)說明 本程序包括兩個(gè)c++ header file和三個(gè)c++ source file。c++ header file包括shipparts.h和stocklist.h;c++ source file包括shipparts.cpp,stocklist.cpp和mainstock.cpp。 三,心得體會(huì) 通過這次大作業(yè)的設(shè)計(jì),我對(duì)C++熟悉了很多,更深刻的體會(huì)到C++編程序的優(yōu)點(diǎn),加深了對(duì)類封裝性和繼承的理解,熟悉了vc的操作,也豐富了自己的編程經(jīng)驗(yàn)。 同時(shí),我也深深體會(huì)到自己的很多不足,沒有很徹底的領(lǐng)會(huì)面向?qū)ο蟪绦蛟O(shè)計(jì)的優(yōu)點(diǎn),不能很好的構(gòu)建層次清晰而且分類詳細(xì)的繼承體系,沒有建立良好的辨認(rèn)錯(cuò)誤輸入發(fā)出警告的防御系統(tǒng),不能檢查出一般的輸入錯(cuò)誤,程序能夠?qū)崿F(xiàn)的功能很少。而且,由于個(gè)人編程經(jīng)驗(yàn)的嚴(yán)重缺乏,程序的適用性極低。 以后要進(jìn)一步學(xué)習(xí)c++的編程技巧,增強(qiáng)自己的編程能力。 Java面向?qū)ο蟪绦蛟O(shè)計(jì)課后答案 Java面向?qū)ο蟪绦蛟O(shè)計(jì) 清華大學(xué)出版社 (編著 耿祥義 張躍平)習(xí)題解答 建議使用文檔結(jié)構(gòu)圖 (選擇Word菜單→視圖→文檔結(jié)構(gòu)圖)習(xí)題1 1.James Gosling、、、、2. (1)使用一個(gè)文本編輯器編寫源文件。 (2)使用Java編譯器(javac.exe)編譯Java源程序,得到字節(jié)碼文件。(3)使用Java解釋器(java.exe)運(yùn)行Java程序 3.Java的源文件是由若干個(gè)書寫形式互相獨(dú)立的類組成的。應(yīng)用程序中可以沒有public類,若有的話至多可以有一個(gè)public類。4.系統(tǒng)環(huán)境path Djdkbin;系統(tǒng)環(huán)境classpath Djdkjrelibrt.jar;.;5. B 6. Java源文件的擴(kuò)展名是.java。Java字節(jié)碼的擴(kuò)展名是.class。 7.D 8.(1)Speak.java(2)生成兩個(gè)字節(jié)碼文件,這些字節(jié)碼文件的名字Speak.class 和 Xiti8.class(3)java Xiti8(4)執(zhí)行java Speak的錯(cuò)誤提示 Exception in thread “main” java.lang.NoSuchMethodError: main 執(zhí)行java xiti8得到的錯(cuò)誤提示 Exception in thread “main” java.lang.NoClassDefFoundError: xiti8(wrong name: Xiti8)執(zhí)行java Xiti8.class得到的錯(cuò)誤提示 Exception in thread “main” java.lang.NoClassDefFoundError: Xiti8/class 執(zhí)行java Xiti8得到的輸出結(jié)果 I'm glad to meet you 9.屬于操作題,解答略。習(xí)題2 1. D 2.【代碼1】 【代碼2】 錯(cuò)誤 //【代碼3】更正為 float z=6.89F;3.float型常量后面必須要有后綴“f”或“F”。 對(duì)于double常量,后面可以有后綴“d”或“D”,但允許省略該后綴。4.public class Xiti4{ public static void main(String args[ ]){ char ch1='你',ch2='我',ch3='他';System.out.println(“”“+ch1+”“的位置:”+(int)ch1);System.out.println(“”“+ch2+”“的位置:”+(int)ch2);System.out.println(“”“+ch3+”“的位置:”+(int)ch3);} } 5.?dāng)?shù)組名字.length 6.?dāng)?shù)組名字.length 7. 【代碼1】A,65 【代碼2】-127 【代碼3】 123456.783,123456.78312 8. 【代碼1】false 【代碼2】true 【代碼3】false 【代碼4】3 【代碼5】4.4 【代碼6】8.8習(xí)題3 輸出110 if-else語(yǔ)句書寫的不夠規(guī)范,復(fù)合語(yǔ)句缺少大括號(hào)“{}”,代碼不夠清晰。2.你好好酷!3. public class Xiti3_3 { public static void main(String args[ ]){ int startPosition=0,endPosition=0;char cStart='а',cEnd='я';startPosition=(int)cStart;//cStart做int型轉(zhuǎn)換據(jù)運(yùn)算,并將結(jié)果賦值給startPosition endPosition=(int)cEnd; //cEnd做int型轉(zhuǎn)換運(yùn)算,并將結(jié)果賦值給endPosition System.out.println(“俄文字母表:”);for(int i=startPosition;i<=endPosition;i++){ char c='
第四篇:面向?qū)ο蟪绦蛟O(shè)計(jì)大作業(yè)實(shí)驗(yàn)報(bào)告
第五篇:Java面向?qū)ο蟪绦蛟O(shè)計(jì)課后答案