已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
實驗一 熟悉VC+IDE開發(fā)環(huán)境一、實驗目的1、熟悉VC+6.0集成開發(fā)環(huán)境,熟練掌握VC+6.0項目工作區(qū)、各種編輯器、菜單欄和工具欄的使用。2、掌握如何編輯、編譯、連接和運行一個C+程序。3、通過運行簡單的C+程序,初步了解C+源程序的結(jié)構和特點。二、實驗要求1、分析下列程序運行的結(jié)果。程序一:#include int add(int x,int y=8);void main() int x=4; coutadd(x),; coutadd(x,add(add(x,add(x)endl;int add(int x,int y) return x+y;程序二:#include void main()int *p,i; i=5;p=&i;i=*p+10;couti=iendl;程序三:#include void main(void)int i=10;int &r=i; r+;couti=i, r=rn;i=88; couti=i, r=rn;程序四:#include int f(int i) static int k=1; for(;i0;i-) k +=i; return k; void main() int i; for(i=0;i5;i+) coutf(i) ; 程序五:#include void func();int n=1; void main() static int a; int b= -9; cout a:a b:b n: nendl;b+=4; func();cout a:a b:b n:nendl;n+=10; func();void func() static int a=2; int b=5; a+=2;n+=12;b+=5; cout a: a b: b n: n endl; 實驗二 C+對C的擴充一、實驗目的1、了解在面向?qū)ο蟪绦蛟O計過程中C+對C功能的擴充與增強,并善于在編寫程序的過程中應用這些新功能。2、進一步熟悉編輯、編譯、連接和運行C+程序的方法。3、進一步熟悉C+程序的結(jié)構和編程方法。二、實驗要求1、分析下列程序運行的結(jié)果。#include int amount=123; void main()int amount=456; cout:amount,; coutamount,; :amount=789; cout:amount,; coutamountn; 2、編寫一個程序,用來求2個或3個正整數(shù)中的最大數(shù)。用不帶默認參數(shù)的函數(shù)實現(xiàn)。用帶默認參數(shù)的函數(shù)實現(xiàn)。3、有5個字符串,要求對它們按由小到大順序排列,用string方法。4、定義一個求兩個數(shù)中較小值的函數(shù)模板min( ),要求在main( )函數(shù)中進行調(diào)用求兩個浮點型數(shù)據(jù)和兩個整型數(shù)據(jù)中較小的數(shù)。實驗三 類和對象(一)一、實驗目的1、掌握聲明類的方法,類和類的成員的概念以及定義對象的方法。2、掌握類的構造函數(shù)與析構函數(shù)的概念和使用方法。3、初步掌握用類和對象編制基于對象的程序。二、實驗要求1、分析下面的程序,寫出其運行時的輸出結(jié)果。#include using namespace std;class Datepublic:Date(int,int,int);Date(int,int);Date(int);Date( );void display( );private:int month;int day;int year;DateDate(int m,int d,int y):month(m),day(d),year(y) DateDate(int m,int d):month(m),day(d) year=2005; DateDate(int m):month(m) day=1;year=2005;DateDate( ) month=1;day=1;year=2005;void Datedisplay( )coutmonth/day/yearendl;int main( ) Date d1(10,13,2005);Date d2(12,30);Date d3(10);Date d4;d1.display( );d2.display( );d3.display( );d4.display( );return 0;2、建立一個名為Student的類,該類有以下幾個私有成員變量:學生姓名、學號、性別、年齡。還有以下兩個成員變量:一個用于初始化學生姓名、學號、性別和年齡的構造函數(shù),一個用于輸出學生信息的函數(shù)。編寫一個主函數(shù),聲明一個學生對象,然后調(diào)用成員函數(shù)在屏幕輸出學生信息。3、類Person的定義如下,請實現(xiàn)該類,并在主函數(shù)中創(chuàng)建對象obj,然后使用構造函數(shù)為obj賦予初始值(內(nèi)容自定)。class Person private: char name10; int age; int salary; char tel8;public: Person(char *xname,int xage,int xsalary,char *xtel); void disp();實驗四 類和對象(二)一、實驗目的1、進一步加深對類和對象的理解。2、掌握對類的對象數(shù)組、對象的指針及其使用方法。3、掌握友元的概念和使用。4、了解類模板的使用方法。二、實驗要求1、分析并比較下列程序運行的結(jié)果。程序一:#include#includeclass smallonepublic:smallone(int sma) coutsm constr:sman;void fn(int n) smallone sm(n);coutin function fn with n=nendl;int main() fn(10); fn(20); return 0;程序二:#include#includeclass smallonepublic:smallone(int sma) coutsm constr:sman;void fn(int n) static smallone sm(n);coutin function fn with n=nendl; int main() fn(10); fn(20); return 0;2、建立一個對象數(shù)組,內(nèi)放5個學生的數(shù)據(jù)(學號、成績),設立一個函數(shù)max,用指向?qū)ο蟮闹羔樧骱瘮?shù)參數(shù),在max函數(shù)中找出5個學生中成績最高者,并輸出其學號。3、聲明一個類模板,利用它分別實現(xiàn)兩個整數(shù)、浮點數(shù)和字符的比較,求出大數(shù)和小數(shù)。(例3.14)實驗五 運算符重載一、實驗目的1、進一步了解運算符重載的概念和使用方法。2、掌握幾種常用的運算符重載的方法。二、實驗要求1、定義一個復數(shù)類Complex,重載運算法“+”,使之能用于復數(shù)的加法運算。將運算符重載為普通函數(shù)(非成員、非友元)、成員函數(shù)、友元函數(shù)。根據(jù)要求修改通過函數(shù)來實現(xiàn)復數(shù)相加的示例,分別編寫程序,求兩個復數(shù)之和。#include using namespace std;class Complex /定義Complex類public: Complex(float x=0,float y=0)real=x;imag=y; /構造函數(shù) Complex complex_add(Complex &c2); /聲明復數(shù)相加函數(shù) void display() coutreal+imagiendl; ; private: float real; /實部 float imag; /虛部;Complex Complex:complex_add(Complex &c2) Complex c;c.real = real +c2.real;c.imag=imag+c2.imag;return c;int main() Complex complex1(3.34f, 4.8f), complex2(12.8f, 5.2f);Complex complex; /定義3個復數(shù)對象complex=plex_add(complex2); / 進行兩個復數(shù)的加運算complex.display( ); return 0;實驗六 繼承和派生一、實驗目的1、了解繼承在面向?qū)ο蟪绦蛟O計中的重要作用。2、進一步理解繼承與派生的概念。3、掌握通過繼承派生出一個新的類的方法。4、了解虛基類的作用和用法。二、實驗要求1、運行程序,分析構造函數(shù)與析構函數(shù)的調(diào)用順序。程序一:#include class A public: A()coutA:Constructorendl;A()coutA:Destructor endl;class B:public A public: B()coutB:Constructor endl; B()coutB:Destructorendl;void main() B b;程序二:#include class A int a;public :A(int aa=0) a=aa; A() cout”Destructor A!”aendl; ;class B: public A int b;public: B(int aa=0, int bb=0) : A(aa) b=bb; B() cout”Destructor B!”bendl; ;void main() B x(5),y(6,7);2、分別聲明Teacher(教師)類和Cadre(干部)類,采用多重繼承方式由這兩個類派生出新類Teacher_Cader類。要求:在兩個基類種豆包含姓名、年齡、性別、地址、電話等數(shù)據(jù)成員。在Teacher類中還包含數(shù)據(jù)成員title(職稱),在Cader 類中還包含數(shù)據(jù)成員post(職務)。在Teacher_Cader類中還包含數(shù)據(jù)成員wages(工資)。在對兩個基類中的姓名、年齡、性別、地址、電話等數(shù)據(jù)成員用相同的名字,在引用這些數(shù)據(jù)成員時,指定作用域。在類體中聲明成員函數(shù),在類外定義數(shù)據(jù)成員。在派生類Teacher_Cader的成員函數(shù)show中調(diào)用Teacher類中的display函數(shù),輸出姓名、年齡、性別、職稱、地址、電話,然后再調(diào)用cout語句輸出職務和工資。實驗七 多態(tài)性和虛函數(shù)一、實驗目的1、了解多態(tài)性的概念。2、了解虛函數(shù)的作用及其使用方法。3、了解靜態(tài)關聯(lián)和動態(tài)關聯(lián)的概念和用法。4、了解純虛函數(shù)和抽象類的概念和用法。二、實驗要求1、分析程序運行結(jié)果,掌握虛函數(shù)的使用。程序一:#include class ONE public: virtual void f()coutlendl;class TWO:public ONE public: TWO()cout2endl;class THREE:public TWO public: virtual void f()TWO:f(); coutf();程序二:#includeclass Base public:virtual void fn() cout In Base Classn;class SubClass :public Base public: virtual void fn() cout fn();p=≻ p-fn();2、實現(xiàn)一個類A,在A中有兩個私有的整型變量a和b,定義構造函數(shù)對a和b進行初始化,并實現(xiàn)成員函數(shù)geta()取得a的值和getb()取b的值。實現(xiàn)類B從A繼承,覆蓋geta(),使其返回a的2倍。主函數(shù)中聲明類B對象,調(diào)用類B中的geta()并將結(jié)果輸出。3、聲明抽象基類Shape,由它派生出3個派生類:Cirle(圓形)、Rectangle(矩形)、Triangle(三角形),用一個函數(shù)printArea分別輸出以上三者的面積,3個圖形的數(shù)據(jù)在定義對象是給定。實驗八 輸入輸出流一、實驗目的1、深入理解C+的輸入輸出的含義與其實現(xiàn)方法。2、掌握標準輸入輸出流的應用,包括格式輸入輸出。3、掌握對文件的輸入輸出操作。二、實驗要求事先編寫好程序,上機調(diào)試和運行程序,分析結(jié)果。(1)輸入三角形的三邊a,b,c,計算三角形的面積的公式是, 形成三角形的條件是:a+bc,b+ca,a+cb編寫程序,輸入a,b,c,檢查a,b,c是否滿足以上條件,如不滿足,由cerr輸出有關出錯信息。(2)從鍵盤輸入一批數(shù)值,要求保留3位小數(shù),在輸出時上下行小數(shù)點對齊。用控制符控制輸出格式;用流成員函數(shù)控制輸出格式。(3)建立兩個磁盤文件f1.dat和f2.dat,編程序?qū)崿F(xiàn)以下工作:從鍵盤輸入20個整數(shù),分別存放在兩個磁盤文件中(每個文件中放10個整數(shù));從f1.dat讀入10個數(shù),然后存放到f2.dat文件原有數(shù)據(jù)的后面;從f2.dat中讀入20個整數(shù),將它們按從小到大的順序存放到f2.dat(不保留原來的數(shù)據(jù))。學時數(shù):2學時實驗九 C+工具一、實驗目的1、學會使用C+的異常處理機制進行程序的調(diào)試2、學會使用命名空間解決名字沖突。二、實驗要求事先編寫好程序,上機調(diào)試和運行程序,分析結(jié)果。(1)求一元二次方程式的實根,如果方程沒有實根,則利用異常處理機制輸出有關警告信息。(2)學校的人事部門保存了有關學生的部分數(shù)據(jù)(學號、姓名、年齡、住址),教務部門也保存了學生的另外一些數(shù)據(jù)(學號、姓名、性別、成績),兩個部門分別編寫了本部門的學生數(shù)據(jù)管理程序,其中都用了Student作為類名?,F(xiàn)在要求在全校的學生數(shù)據(jù)管理程序中調(diào)用這兩個部門的學生數(shù)據(jù),分別輸出兩種內(nèi)容的學生數(shù)據(jù)。要求用ANSI C+編程,使用命名空間。實驗十 復數(shù)計算器一、實驗目的掌握面向?qū)ο蟪绦蛟O計方法和技巧,設計一個小型的應用程序,進一步提高解決問題的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年金融分析師股票市場股票投資策略與風險管理模擬題
- 2026年海洋生態(tài)保護法律知識問答
- 2026年快遞公司派送員面試題路線規(guī)劃與貨物運輸
- 2026年高性能計算機硬件與系統(tǒng)結(jié)構中級水平認證考試題
- 2026年音樂教師音樂基礎理論與演唱技巧進階試題
- 2026年汽車維修技師考試題庫汽車維修技術及故障診斷題
- 2026年MBA入學考試數(shù)學思維訓練與強化題庫
- 煙葉收購精準預約制度
- 2026年工商管理專業(yè)經(jīng)典教材配套習題集
- 消防控制中心上墻制度
- 2026年標準版離婚協(xié)議書(有財產(chǎn))
- 養(yǎng)老院電氣火災培訓課件
- 中國工商銀行2025年度春季校園招聘筆試歷年典型考題及考點剖析附帶答案詳解
- 2026年類器官芯片技術項目商業(yè)計劃書
- 2026北京西城初二上學期期末數(shù)學試卷和答案
- 中國家庭財富與消費報告2025年第三季度
- (標準)檔口轉(zhuǎn)讓合同協(xié)議書模版
- 杭州物業(yè)外賣管理辦法
- 紅外線治療的操作流程講課件
- 過去進行時(總結(jié))
- 物業(yè)節(jié)前安全教育培訓
評論
0/150
提交評論