《面向?qū)ο蟪绦蛟O(shè)計(jì)》大綱_第1頁(yè)
《面向?qū)ο蟪绦蛟O(shè)計(jì)》大綱_第2頁(yè)
《面向?qū)ο蟪绦蛟O(shè)計(jì)》大綱_第3頁(yè)
《面向?qū)ο蟪绦蛟O(shè)計(jì)》大綱_第4頁(yè)
《面向?qū)ο蟪绦蛟O(shè)計(jì)》大綱_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、面向?qū)ο蟪绦蛟O(shè)計(jì)實(shí)驗(yàn)教案大綱課程編號(hào):一、適用范圍大綱適用于計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)本科教案使用。二、課程名稱面向?qū)ο蟪绦蛟O(shè)計(jì)三、學(xué)時(shí)數(shù)與學(xué)分總學(xué)時(shí): 72總學(xué)分:4實(shí)驗(yàn)學(xué)時(shí): 20實(shí)驗(yàn)學(xué)分: 0.5四、教案目的和基本要求(一)目的:使學(xué)生熟悉C+ 的語(yǔ)法特性,理解面向?qū)ο蟪绦蛟O(shè)計(jì)的基本原理,包括類、對(duì)象、抽象、封裝、繼承和多態(tài)性等關(guān)鍵要素以及其關(guān)鍵語(yǔ)法特性;掌握用C+ 編寫(xiě)面向?qū)ο蟪绦虻囊话惴椒?,培養(yǎng)學(xué)生創(chuàng)新意識(shí)和提高學(xué)生實(shí)踐能力;初步掌握面向?qū)ο缶幊汰h(huán)境Visual C+ 的使用,學(xué)會(huì)調(diào)試、分析和自行編寫(xiě)C+ 程序,能進(jìn)行簡(jiǎn)單的Windows程序設(shè)計(jì),為將來(lái)使用或繼續(xù)從事C+ 工程設(shè)計(jì)打下基礎(chǔ)

2、。(二)基本要求:了解和熟悉Visual C+ 開(kāi)發(fā)環(huán)境;學(xué)會(huì)上機(jī)調(diào)試程序,達(dá)到實(shí)驗(yàn)知識(shí)和理論知識(shí)的融會(huì)貫通。上機(jī)實(shí)驗(yàn)前,學(xué)生必須事先根據(jù)題目的內(nèi)容編好程序,然后在實(shí)驗(yàn)時(shí)輸入程序、調(diào)試程序,直至運(yùn)行結(jié)果正確為止,上機(jī)結(jié)束后,應(yīng)整理出實(shí)驗(yàn)報(bào)告。五、實(shí)驗(yàn)工程與學(xué)時(shí)分配序號(hào)工程名稱學(xué)時(shí)1C+程序設(shè)計(jì)初步22類和對(duì)象43運(yùn)算符重載24繼承25多態(tài)性和虛函數(shù)26輸入輸出流27異常處理28基于對(duì)話框的應(yīng)用程序29文檔 /視圖結(jié)構(gòu)應(yīng)用程序2總計(jì)22六、教材、講義及參考書(shū)(一)教材:面向?qū)ο蟪绦蛟O(shè)計(jì),譚浩強(qiáng),清華大學(xué)出版社.(二)教參: C+ 程序設(shè)計(jì)教程,錢(qián)能,清華大學(xué)出版社.七、實(shí)驗(yàn)成績(jī)?cè)u(píng)定辦法考查:平時(shí)

3、考核加期末機(jī)試。實(shí)驗(yàn)成績(jī)占期末總成績(jī)的30%。平時(shí)考核:占實(shí)驗(yàn)成績(jī)的50%,由以下兩部分組成。實(shí)驗(yàn)預(yù)習(xí)和表現(xiàn)、實(shí)驗(yàn)報(bào)告。期末機(jī)試:占實(shí)驗(yàn)成績(jī)的50%。實(shí)驗(yàn)類型驗(yàn)證性實(shí)驗(yàn)驗(yàn)證性實(shí)驗(yàn)驗(yàn)證性實(shí)驗(yàn)驗(yàn)證性實(shí)驗(yàn)驗(yàn)證性實(shí)驗(yàn)驗(yàn)證性實(shí)驗(yàn)驗(yàn)證性實(shí)驗(yàn)驗(yàn)證性實(shí)驗(yàn)綜合性實(shí)驗(yàn)1、實(shí)驗(yàn)預(yù)習(xí)和表現(xiàn):上機(jī)實(shí)驗(yàn)前,學(xué)生必須事先根據(jù)題目的內(nèi)容編好程序,然后在實(shí)驗(yàn)時(shí)輸入程序、調(diào)試程序,直至運(yùn)行結(jié)果正確為止。在實(shí)驗(yàn)中,教師可根據(jù)學(xué)生編程操作能力、觀察和分析及運(yùn)用知識(shí)能力、程序編制正確性以及學(xué)生的課堂紀(jì)律、實(shí)驗(yàn)態(tài)度、1 / 7保持實(shí)驗(yàn)室衛(wèi)生等方面的表現(xiàn)進(jìn)行綜合考核。2、實(shí)驗(yàn)報(bào)告:學(xué)生實(shí)驗(yàn)后應(yīng)按時(shí)完成實(shí)驗(yàn)報(bào)告。實(shí)驗(yàn)報(bào)告應(yīng)包括以下內(nèi)容:實(shí)驗(yàn)

4、目的、實(shí)驗(yàn)要求,實(shí)驗(yàn)題目、程序清單、運(yùn)行結(jié)果、實(shí)驗(yàn)小結(jié)。3、期末機(jī)試:通過(guò)考試了解學(xué)生對(duì)基本理論掌握的程度和實(shí)際水平,教師出實(shí)驗(yàn)考試卷目,讓學(xué)生在規(guī)定的時(shí)間完成。八、實(shí)驗(yàn)教案大綱說(shuō)明本大綱共安排20 學(xué)時(shí)的實(shí)驗(yàn),全部是必做題目。九、實(shí)驗(yàn)工程實(shí)驗(yàn)一、 C+ 程序設(shè)計(jì)初步實(shí)驗(yàn)?zāi)康模?.掌握重載函數(shù)的定義方法。2.掌握引用的使用方法。3.掌握 new 和 delete 的使用方法。實(shí)驗(yàn)內(nèi)容:1.編寫(xiě)一個(gè)函數(shù),用引用的方法交換兩個(gè)變量的值。2.用函數(shù)重載的方法編寫(xiě)重載函數(shù),分別比較兩個(gè)整型數(shù)、兩個(gè)長(zhǎng)整型數(shù)以及三個(gè)整型數(shù)的大小,并返回較大者。3.編寫(xiě)一個(gè)程序,用new 運(yùn)算符分配5 個(gè)整型數(shù)的空間,從鍵

5、盤(pán)讀入數(shù)據(jù)存入此存儲(chǔ)空間,然后輸出到屏幕上,最后釋放該存儲(chǔ)空間。實(shí)驗(yàn)二、類和對(duì)象實(shí)驗(yàn)?zāi)康模?.掌握聲明類的方法,類和類的成員的概念以及定義對(duì)象的方法。2.初步掌握用類和對(duì)象編制基于對(duì)象的程序。3.掌握類的構(gòu)造函數(shù)和析構(gòu)函數(shù)的概念和使用方法。4.掌握友元和靜態(tài)成員的使用方法。4.學(xué)習(xí)檢查和調(diào)試基于對(duì)象的程序。實(shí)驗(yàn)內(nèi)容:1.分別給出如下的3 個(gè)文件:含類定義的頭文件student.h,class Student public:void display( )。private:int num。char name20。char sex 。 。包含成員函數(shù)定義的源文件student.cpp#include

6、 <iostream>#include "student.h"using namespace std。void Student:display( ) cout<<"num:"<<num<<endl 。 cout<<"name:"<<name<<endl 。cout<<"sex:"<<sex<<endl。2 / 7包含主函數(shù)的源文件main.cpp。#include "student.h&

7、quot;void main( )Student stud。stud.display()。 請(qǐng)完善該程序,在類中增加一個(gè)對(duì)數(shù)據(jù)成員賦初值的成員函數(shù)set_value。上機(jī)調(diào)試并運(yùn)行。2該程序運(yùn)行有問(wèn)題,請(qǐng)改正main 函數(shù)中的錯(cuò)誤,使該程序的輸出結(jié)果如下:Constructor called.Default constructor called.Area is 6Area is 0Area is 6源程序文件清單如下:#include<iostream>using namespace std。class RectAngleprivate:double ledge,sedge。pub

8、lic:RectAngle()cout<<"Default constructor called.n"。RectAngle(double l,double s)ledge=l。 sedge=s 。cout<<"Constructor called.n"。void Set(double l,double s)ledge=l。 sedge=s 。void Area()cout<<"Area is "<<ledge*sedge<<endl。 。void main()/* found

9、 */RectAngle Rect1(2,3)。RectAngle Rect2(1)。3 / 7/* found */RectAngle Rect3。Rect1.Area()。/* found */Rect2.ledge=0。 Rect2.sedge=0 。Rect2.Area()。Rect3.Area()。3. 有以下程序:#include <iostream.h>class Date。class Timepublic:Time(int,int,int)。void display(Date &)。private:int hour。int minute。int sec。 。

10、class Datepublic:Date(int,int,int)。friend void Time display(Date &)。private:int month。int day。int year。 。Time Time(int h,int m,int s)hour=h 。minute=m 。sec=s 。Date Date(int m,int d,int y)month=m。day=d 。year=y 。void Time display(Date &d)cout<<d.month<<“/ ” <<d.day<< “ /

11、 ” <<d.year<<endl。cout<<hour<< “:” <<minute<< “:” <<sec<<endl 。void main( )4 / 7Time t1(10,13,56)。Date d1(12,25,2004)。t1.display(d1)。分析和運(yùn)行此程序,注意友元函數(shù)Time:display 的作用。將程序中的display 函數(shù)不放在Time 類中,而作為類外的普通函數(shù),然后分別在Time 和 Date 類中將 display 聲明為友元函數(shù)。在主函數(shù)中調(diào)用displa

12、y 函數(shù), display 函數(shù)分別引用 Time 和 Date 兩個(gè)類的對(duì)象的私有數(shù)據(jù),輸出年、月、日和時(shí)、分、秒。修改后上機(jī)調(diào)試和運(yùn)行。4. 商店銷售某一商品,商店每天公布統(tǒng)一的折扣(discount) 。同時(shí)允許銷售人員在銷售時(shí)靈活掌握售價(jià) (price) ,在此基礎(chǔ)上,對(duì)一次購(gòu)10 件以上者,還可以享受9.8 折優(yōu)惠。現(xiàn)已知當(dāng)天 3 名銷貨員的銷售情況為:銷貨員號(hào) (num)銷貨件數(shù) (quantity)銷貨單價(jià) (price)101523.51021224.5610310021.5請(qǐng)編程序,計(jì)算出當(dāng)日此商品的總銷售款sum,以及每件商品的平均售價(jià)。要求用靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)。(

13、 提示:將折扣 discount 、總銷售款sum 和商品銷售總件數(shù)n 聲明為靜態(tài)數(shù)據(jù)成員,再定義靜態(tài)成員函數(shù)average( 求平均售價(jià) ) 和 display(輸出結(jié)果 ) 。實(shí)驗(yàn)三、運(yùn)算符重載實(shí)驗(yàn)?zāi)康模?.進(jìn)一步了解運(yùn)算符重載的概念和使用方法。2.掌握幾種常用的運(yùn)算符重載的方法。3.了解在 Visual C+6.0 環(huán)境下進(jìn)行運(yùn)算符重載要注意的問(wèn)題。實(shí)驗(yàn)內(nèi)容:1.聲明一個(gè)復(fù)數(shù)類Complex ,重載運(yùn)算符“+”,使之能用于復(fù)數(shù)的加法運(yùn)算。參加運(yùn)算的兩個(gè)運(yùn)算量可以都是類對(duì)象,也可以其中有一個(gè)是整數(shù),順序任意。例如:c1+c2 , i+c1 ,c1+i 均合法(設(shè)i 為整數(shù), c1, c2

14、為復(fù)數(shù))。2.有兩個(gè)矩陣a 和 b,均為 2 行 3 列,求兩個(gè)矩陣之和。重載運(yùn)算符“+”,使之用于矩陣相加,如: c=a+b。實(shí)驗(yàn)四、繼承實(shí)驗(yàn)?zāi)康模?.了解繼承在面向?qū)ο蟪绦蛟O(shè)計(jì)中的重要作用。2.進(jìn)一步理解繼承與派生的概念。3.掌握通過(guò)繼承派生出一個(gè)新類的方法。4.了解虛基類的作用和用法。實(shí)驗(yàn)內(nèi)容:1.定義基類Student,含有私有數(shù)據(jù)成員num,name,sex,公有成員函數(shù)get_value()用于輸入數(shù)據(jù), display() 用于輸出數(shù)據(jù)。定義派生類Student1(從基類公有繼承),含有私有數(shù)據(jù)成員age,addr,設(shè)計(jì)派生類的成員函數(shù),使程序運(yùn)行時(shí)輸入num , name, s

15、ex, age,addr 的值,程序應(yīng)輸出以上5 個(gè)數(shù)據(jù)的值。2.修改上面的程序,基類數(shù)據(jù)成員為保護(hù)類型,派生類從基類保護(hù)繼承,實(shí)現(xiàn)輸入和輸出 5 個(gè)數(shù)據(jù)成員的值。3.分別聲明Teacher(教師)類和Cadre(干部)類,采用多重繼承方式由這兩個(gè)類派5 / 7生出新類Teacher_Cadre(教師兼干部)。要求:在兩個(gè)基類中都包含一部分相同名字的數(shù)據(jù)成員name(姓名), age(年齡)和成員函數(shù)display()。在Teacher 類中還包含數(shù)據(jù)成員title (職稱),在Cadre 類中還包含數(shù)據(jù)成員post(職務(wù)),在Teacher_Cadre(教師兼干部)中還包含數(shù)據(jù)成員wages

16、(工資)。在派生類Teacher_Cadre 的成員函數(shù)show 中調(diào)用 Teacher 類中的 display 函數(shù),輸出姓名、年齡、職稱,然后再用cout 語(yǔ)句輸出職務(wù)與工資。實(shí)驗(yàn)五、多態(tài)性和虛函數(shù)實(shí)驗(yàn)?zāi)康模?.了解多態(tài)性的概念。2.了解虛函數(shù)的作用及使用方法。3.了解靜態(tài)關(guān)聯(lián)和動(dòng)態(tài)關(guān)聯(lián)的概念和用法。4.了解純虛函數(shù)和抽象類的概念和用法。實(shí)驗(yàn)內(nèi)容:1.已有類的定義如下:class Basepublic:virtual void print( )cout<<“Base”<<endl 。 。從 Base 類派生出兩個(gè)新類BaseA、BaseB ,每個(gè)類用成員函數(shù)prin

17、t( )來(lái)打印自己的類名。在 main( ) 函數(shù)中創(chuàng)建這些類的對(duì)象及基類的指針,通過(guò)該指針來(lái)調(diào)用print( ) 函數(shù)。2.寫(xiě)一個(gè)程序,定義抽象基類Shape,它有三個(gè)公有派生類:類Circle 用來(lái)描述圓形,類 Rectangle 用來(lái)描述矩形,類Triangle 用來(lái)描述三角形。用虛函數(shù)area( )分別計(jì)算幾種圖形的面積,并求它們的和。實(shí)驗(yàn)六、輸入輸出流實(shí)驗(yàn)?zāi)康模?. 深入理解 C+的輸入輸出的含義和實(shí)現(xiàn)方法。2. 掌握標(biāo)準(zhǔn)輸入輸出流的應(yīng)用,包括格式輸入輸出。3. 掌握文件的輸入輸出操作。實(shí)驗(yàn)內(nèi)容:1.從鍵盤(pán)輸入一批數(shù)值,要求保留3 位小數(shù),在輸出時(shí)上下行小數(shù)點(diǎn)對(duì)齊。( 1)用控制符控

18、制輸出格式;( 2)用流成員函數(shù)控制輸出格式。2.建立兩個(gè)磁盤(pán)文件f1.dat 和 f2.dat,編程序?qū)崿F(xiàn)以下工作:(1)從鍵盤(pán)輸入20 個(gè)整數(shù),分別存放在兩個(gè)磁盤(pán)文件中(每個(gè)文件中放10 個(gè)整數(shù));(2)從 f1.dat 讀入 10 個(gè)數(shù),然后存放到f2.dat 文件原有數(shù)據(jù)的后面;(3)從 f2.dat 中讀入 20 個(gè)整數(shù),將它們按從小到大的順序存放到f2.dat(不保留原來(lái)的數(shù)據(jù))。實(shí)驗(yàn)八、基于對(duì)話框的應(yīng)用程序?qū)嶒?yàn)?zāi)康模?. 基于對(duì)話框應(yīng)用的框架結(jié)構(gòu)及其運(yùn)行機(jī)制。2. 初步掌握創(chuàng)建基于對(duì)話框應(yīng)用程序的方法、過(guò)程。3. 掌握常用控件的重要屬性、主要消息、常用成員函數(shù)、并能熟練地應(yīng)用這些控件設(shè)計(jì)應(yīng)用程序。實(shí)驗(yàn)內(nèi)容:6 / 71.設(shè)計(jì)一個(gè)華氏溫度和攝氏溫度之間轉(zhuǎn)換的程序,如圖所示。轉(zhuǎn)換公式為:9FC325 ( F 32) (華氏轉(zhuǎn)換成攝氏)5(攝氏轉(zhuǎn)換成華氏)、 C92.

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論