欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      西南交大c++實驗報告11

      時間:2019-05-15 09:33:11下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《西南交大c++實驗報告11》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《西南交大c++實驗報告11》。

      第一篇:西南交大c++實驗報告11

      實驗 11實驗報告

      教學(xué)班級:_26_學(xué)生學(xué)號:_2015_學(xué)生姓名:__ 實驗日期:___2016.6.3____實驗地點:__7307__(機房)指導(dǎo)教師簽名:_____________ 實驗成績:______________

      一、實驗?zāi)康?/p>

      1.了解存放常用系統(tǒng)函數(shù)的頭文件; 2.掌握常用系統(tǒng)函數(shù)的功能及使用方法;

      3.掌握自定義有返回值函數(shù)的概念、定義及使用。

      二、實驗任務(wù)

      1、實現(xiàn)功能:1~10加減乘除運算訓(xùn)練系統(tǒng)。

      (1)主函數(shù)功能:隨機產(chǎn)生一個1~10加減乘除算術(shù)式(數(shù)字在1~10之間隨機產(chǎn)生,運 算符在加減乘除中隨機產(chǎn)生),要求用戶輸入計算結(jié)果,通過調(diào)用子函數(shù)得到正確答 案,判斷用戶的計算結(jié)果是否正確并輸出結(jié)論。

      (2)子函數(shù)功能:定義有返回值函數(shù),完成算術(shù)式的計算功能。

      2、實現(xiàn)功能:求兩個整數(shù)的最大公約數(shù)、最小公倍數(shù)。

      (1)主函數(shù)功能:從鍵盤輸入兩個整數(shù),通過調(diào)用兩個子函數(shù)分別得到最大公約數(shù)、最小公倍數(shù)并輸出結(jié)果。

      (2)子函數(shù)1功能:定義有返回值函數(shù),求兩個整數(shù)的最大公約數(shù)。子函數(shù)2功能:定義有返回值函數(shù),求兩個整數(shù)的最小公倍數(shù)。

      3.實現(xiàn)功能:根據(jù)鍵盤輸入的整數(shù)x,計算分段函數(shù)sign(x)的值。

      (1)主函數(shù)功能:從鍵盤輸入整數(shù)x,通過調(diào)用子函數(shù)得到計算結(jié)果并輸出。(2)子函數(shù)功能:定義有返回值函數(shù),實現(xiàn)該分段函數(shù)的功能。

      三、實驗結(jié)果(源程序 + 注釋)

      /*

      1、實現(xiàn)功能:1~10加減乘除運算訓(xùn)練系統(tǒng)。

      (1)主函數(shù)功能:隨機產(chǎn)生一個1~10加減乘除算術(shù)式(數(shù)字在1~10之間隨機產(chǎn)生,運 算符在加減乘除中隨機產(chǎn)生),要求用戶輸入計算結(jié)果,通過調(diào)用子函數(shù)得到正確答 案,判斷用戶的計算結(jié)果是否正確并輸出結(jié)論。

      (2)子函數(shù)功能:定義有返回值函數(shù),完成算術(shù)式的計算功能。*/ #include #include #include using namespace std;void main(){ cout << “Name:” << endl;cout << “Number:20” << endl;int x;double a, b, y, answer = 0.0;//定義四個整型變量

      char n;//定義一個字符型變量

      srand(time(NULL));//初始化隨機數(shù)產(chǎn)生器

      a = 1 + rand()%(101 + 1);//產(chǎn)生1~10的隨機數(shù)

      x = 1 + rand()%(4z;break;case 3:answer = y * z;break;case 4:answer = y / z;break;} return answer;}

      /*實現(xiàn)功能:求兩個整數(shù)的最大公約數(shù)、最小公倍數(shù)。(1)主函數(shù)功能:從鍵盤輸入兩個整數(shù),通過調(diào)用兩個子函數(shù)分別得到最大公約數(shù)、最小公倍數(shù)并輸出結(jié)果。

      (2)子函數(shù)1功能:定義有返回值函數(shù),求兩個整數(shù)的最大公約數(shù)。子函數(shù)2功能:定義有返回值函數(shù),求兩個整數(shù)的最小公倍數(shù)。*/ #include using namespace std;void main(){ cout << “Name:” << endl;cout << “Number:2” << endl;int m, n, x, y;//定義4個整型變量

      cout << “請輸入兩個整數(shù)” << endl;cin >> m >> n;int gys(int a, int b);//調(diào)用自定義函數(shù)一前的說明

      int gbs(int a, int b, int c);//調(diào)用自定義函數(shù)二之前的說明

      x = gys(m, n);y = gbs(m, n, x);cout << “這兩個數(shù)的最大公約數(shù)是:” << x << “;最小公倍數(shù)是:” << y << endl;//輸出結(jié)果 } int gys(int a,int b)//子函數(shù)一:用來求兩個整數(shù)的最大公約數(shù) { int c, p;if(a > b)//確保b形參變量的值比a形參變量的值大

      { c = a;a = b;b = c;} p = b % a;while(p!= 0){ b = a;a = p;p = b%a;}//求出最大公約數(shù)

      return a;} int gbs(int a, int b, int c)//子函數(shù)二:用來求兩個整數(shù)的最小公倍數(shù) { int q;q = a * b / c;//求出最小公倍數(shù)

      return q;}

      /*實現(xiàn)功能:根據(jù)鍵盤輸入的整數(shù)x,計算分段函數(shù)sign(x)的值。

      (1)主函數(shù)功能:從鍵盤輸入整數(shù)x,通過調(diào)用子函數(shù)得到計算結(jié)果并輸出。(2)子函數(shù)功能:定義有返回值函數(shù),實現(xiàn)該分段函數(shù)的功能。*/ #include using namespace std;void main(){ cout << “Name:” << endl;cout << “Number:” << endl;cout << “請輸入自變量x的值:”;int x,y;//定義兩個整型變量

      cin >> x;//從鍵盤輸入自變量x的值

      int sign(int a);//調(diào)用自定義函數(shù)前的說明

      y = sign(x);//為y賦值

      cout << “對應(yīng)自變量x=” << x << “時的函數(shù)的值為:” << y << endl;//輸出結(jié)果 } int sign(int a)//子函數(shù):用于求對應(yīng)x值的y值 { int b = 0;if(a < 0)b =-1;else if(a == 0)b = 0;else if(a > 0)b = 1;return b;}

      第二篇:西南交大鐵路通信信號實驗報告

      通信信號課程實驗報告(聯(lián)鎖實驗)

      實驗名稱:6502電氣聯(lián)鎖和微機聯(lián)鎖實驗

      班級:交運2012-05班姓名:武曉程學(xué)號:20121969 實驗日期:2014.5.9

      實驗地點: 53011

      一.實驗?zāi)康?/p>

      1.認識6502電氣集中聯(lián)鎖設(shè)備控制臺

      2.運用6502電氣集中聯(lián)鎖設(shè)備辦理列車進路和調(diào)車進路,取消辦理的進路。3.認識微機聯(lián)鎖軟件及其操作

      4.運用微機聯(lián)鎖系統(tǒng)辦理列車和調(diào)車進路,取消辦理的進路

      5.思考不同的聯(lián)鎖設(shè)備在辦理、取消進路時的差異。分析和比較兩種系統(tǒng)的異同。6.加深對電氣集中聯(lián)鎖系統(tǒng)和微機聯(lián)鎖系統(tǒng)的理解,回答思考問題。

      二.實驗設(shè)備

      1.6502電氣集中聯(lián)鎖控制臺1臺 2.微機聯(lián)鎖設(shè)備1套

      三.實驗原理(給出兩種聯(lián)鎖系統(tǒng)的原理)

      電氣集中聯(lián)鎖:采用電磁繼電器,以邏輯電路實現(xiàn)聯(lián)鎖,全站的信號機和道岔可由一個信號樓集中控制。為了建立一條進路,值班人員可在控制臺上按下一條進路的始端按鈕和終端按鈕。不論進路上有多少組道岔,只要在進路范圍內(nèi)無車占用,又沒有安排敵對進路,就可將進路中所有道岔轉(zhuǎn)換到規(guī)定位置,并將進路鎖??;在控制臺的軌道表示盤上,所選出的進路從始端到終端呈現(xiàn)一條白色光帶,即表示進路已被選出并已經(jīng)鎖閉。防護這條進路的信號機也同時自動開放。在表示盤上軌道模型旁,這條進路始端處的信號復(fù)示器亮一綠燈,表示防護此進路的信號機已經(jīng)開放。當(dāng)列車駛?cè)朐撨M路后,信號機自動關(guān)閉,信號復(fù)示器的綠燈改亮紅燈,白色光帶隨著列車的前進,一段一段地由白色變?yōu)榧t色,表示列車在占用該區(qū)段,然后又由紅色變?yōu)闇鐭魻顟B(tài),表示列車已出清該區(qū)段,并且該區(qū)段已經(jīng)解鎖。這時,又可利用該區(qū)段內(nèi)的道岔建立新的進路。

      微機聯(lián)鎖:計算機聯(lián)鎖是用微型機算計的軟硬件和其他一些電子、繼電器件組成的,具有故障-安全性能的實時控制系統(tǒng)。其安全可靠、處理速度快,與繼電集中聯(lián)鎖相比具有十分明顯的技術(shù)經(jīng)濟優(yōu)勢。無論在安全性、可靠性、經(jīng)濟性等方面都是繼電集中聯(lián)鎖無法比擬的,而且設(shè)計、施工、維修和使用大為方便,是一套全新的系統(tǒng)設(shè)備。微機聯(lián)鎖控制系統(tǒng)是實現(xiàn)以進路控制為主要內(nèi)容的聯(lián)鎖功能控制系統(tǒng),它主要以色燈信號機、動力轉(zhuǎn)轍機和軌道電路作為三大室外設(shè)備,并以電子設(shè)備實現(xiàn)聯(lián)鎖功能對軌道區(qū)段狀態(tài)、信號狀態(tài)和道岔狀態(tài)進行監(jiān)測,并對信號機和道岔實施控制的系統(tǒng)。

      四.實驗過程及心得體會

      在5311教室,通過6502電氣集中聯(lián)鎖控制臺和計算機模擬接車、發(fā)車、調(diào)車,加強了對課堂學(xué)習(xí)的理論知識的理解,加深了對車站聯(lián)鎖設(shè)備的印象和感觸。相比6502電氣集中聯(lián)鎖,微機聯(lián)鎖有這更多的優(yōu)勢。

      五.問題

      1.6502電氣集中聯(lián)鎖和微機聯(lián)鎖辦理進路時的異同之處?

      共同點:。嚴禁采取任何操作使列車迎面解鎖,區(qū)段正常解鎖采用三點檢查,即出清相鄰的前方區(qū)段、占用并出清本區(qū)段、進入相鄰的后方區(qū)段。

      信號開放,列車駛?cè)虢咏鼌^(qū)段。此時,因故需要取消進路,為防止列車闖人已解鎖

      區(qū)段,進路必須延時解鎖。延時時間長短由列車運行速度、接近區(qū)段長度決定,調(diào)車進路和側(cè)線發(fā)車為30 s,接車進路和正線發(fā)車進路為3 min。

      不同點:①在6502電路中,若已開放的信號接近區(qū)段瞬間分路不良,可以立即取消已經(jīng)接近鎖閉的進路。而計算機聯(lián)鎖有記憶功能,為安全起見,信號開放后,列車進路只要接近區(qū)段占用過,進路就必須延時解鎖(調(diào)車不延時)。②進站信號開放、列車接近后,信號因故關(guān)閉,直接開放引導(dǎo),6502電路辦理引導(dǎo)進路解鎖時不延時。而計算機聯(lián)鎖在辦理引導(dǎo)進路解鎖時必須延時3 rain解鎖。

      2.微機聯(lián)鎖相比電氣集中聯(lián)鎖的優(yōu)點有哪些?

      (1)體積小、可靠性高,可實現(xiàn)無維修,為鐵路信號技術(shù)結(jié)構(gòu)的改革創(chuàng)造了條件。

      (2)微機聯(lián)鎖系統(tǒng)功能更加完善。我國廣泛應(yīng)用的6502電氣集中聯(lián)鎖系統(tǒng)受站場形電 路層次、結(jié)構(gòu)、繼電群數(shù)量,以及網(wǎng)絡(luò)線的多少等限制。而微機聯(lián)鎖系統(tǒng)通過少量硬件和軟件開發(fā)即可解決上述限制。

      (3)微機聯(lián)鎖系統(tǒng)的信息量大,利用當(dāng)前的各種網(wǎng)絡(luò)手段,可與行車調(diào)度指揮系統(tǒng)、列車控制系統(tǒng)聯(lián)網(wǎng),提供及交換各種信息并協(xié)調(diào)工作。

      (4)微機聯(lián)鎖系統(tǒng)易于實現(xiàn)系統(tǒng)自身化管理,利用自診斷、自檢測功能及遠距離聯(lián)網(wǎng)。,實現(xiàn)遠距離診斷

      (5)隨著大規(guī)模集成電路的發(fā)展,微機聯(lián)鎖系統(tǒng)的性能價格比與繼電聯(lián)鎖相比將更占優(yōu)勢。通信信號課程實驗報告(閉塞實驗)

      實驗名稱:自動閉塞實驗

      班級:交運2012-05班姓名:武曉程學(xué)號:20121969 實驗日期:2014.5.9實驗地點:5307

      一.實驗?zāi)康?/p>

      1.認識自動閉塞系統(tǒng)

      2.觀察自動閉塞下,列車運行與信號指示的關(guān)系。3.加深對自動閉塞系統(tǒng)工作原理的認識。

      二.實驗設(shè)備

      1.列車運行仿真實驗系統(tǒng)

      三.實驗原理(給出自動閉塞系統(tǒng)的原理)

      自動閉塞系統(tǒng)的作用原理是將軌道信息通過鋼軌傳送到動車組的車載系統(tǒng),通過信號機紅、黃、綠三種顯示方式,預(yù)告列車運行前方兩個閉塞分區(qū)的空閑狀態(tài)。紅燈表示分區(qū)正被占用,要求列車停車,暫時不得越過(2分鐘后可低速度運行);黃燈表示前方有一個閉塞分區(qū)空閑,要求列車注意運行;綠燈表示前方至少有兩個分區(qū)空閑,指示列車可按規(guī)定的最高速度運行。

      四.實驗過程及心得體會

      在老師的帶領(lǐng)和指導(dǎo)下,我學(xué)會了一點點對自動閉塞的操作。在自動閉塞的區(qū)間上,四顯示信號機更能給列車運行帶來效率,能夠使鐵路運營更快,更好,為鐵路運營帶來了利益。同時也能夠讓人們感受到科技帶來的幸福。

      五.問題

      1.自動閉塞系統(tǒng)相比半自動閉塞的優(yōu)點有哪些?

      1.由于劃分成閉塞分區(qū),可用最小運行間隔時間開行追蹤列車,從而大大提高區(qū)間通過能力;

      2.整個區(qū)間裝設(shè)了連續(xù)的軌道電路,可以自動檢查軌道的完整性,提高了行車安全的程度;

      3.辦理發(fā)車進路時自動辦理閉塞手續(xù),自動變換信號顯示和自動閉塞恢復(fù)。2.自動閉塞系統(tǒng)的組成。

      利用通過信號機將一個區(qū)間劃分為若干個閉塞分區(qū),每個閉塞分區(qū)內(nèi)都裝有軌道電路或列車檢測設(shè)備,通過軌道電路將列車和通過信號機的顯示聯(lián)系起來,使信號機的顯示依列車運行或區(qū)間狀態(tài)自動變換的系統(tǒng)。

      第三篇:C++實驗報告

      姓名:XX 學(xué)院:XXX 班級:XXX 學(xué)號:XXX

      i++;

      } while(i<=10);cout<<“sum=”<

      #include using namespace std;void main(){ int i(1),sum(0);

      for(i;i<=10,i++)

      {

      sum+=i;

      }

      cout<<“sum=”< using namespace std;const float pi=3.1416;void main(){ int itype;

      cout<<“不是合法的輸入”< using namespace std;struct riqi { int year;int mon;int day;int hour;int minut;int second;};void main(){ riqi a;cout<<“輸入時間日期”<>a.year;cout<<“輸入月份”<

      實驗

      三、函數(shù)的應(yīng)用(2學(xué)時)

      1、實驗?zāi)康模?/p>

      掌握函數(shù)的定義和調(diào)用方法。練習(xí)重載函數(shù)使用。練習(xí)函數(shù)模板的使用 練習(xí)使用系統(tǒng)函數(shù)。

      在main()函數(shù)中提示輸入兩個整數(shù)x,y,使用cin語句得到x,y的值,調(diào)用pow(x,y)函數(shù)計算x的y次冪的結(jié)果,再顯示出來。程序名:lab3_4.cpp。

      編寫遞歸函數(shù)int fib(int n),在主程序中輸入n的值,調(diào)用fib函數(shù)計算Fibonacci級數(shù)。公式為fib(n)=fib(n-1)+fib(n-2),n>2;fib(1)=fib(2)=1。使用if語句判斷函數(shù)的出口,在程序中用cout語句輸出提示信息。程序名:lab3_5.cpp。

      7)調(diào)試操作步驟如下:

      選擇菜單命令Build|Start Debug |Step In,系統(tǒng)進入單步執(zhí)行狀態(tài),程序開始運行,并出現(xiàn)一個DOS窗口,此時光標(biāo)停在main()函數(shù)的入口處。

      把光標(biāo)移到語句answer=fib(n)前,從Debug菜單單擊Run To Cursor,在程序運行的DOS窗口中按提示輸入數(shù)字10,這時回到可視界面中,光標(biāo)停在第11行,觀察一下n的值。

      從Debug菜單中單擊Step Into,程序進入fib函數(shù),觀察一下n的值,把光標(biāo)移到語句return(fib(n-2)+fib(n-1))前,從Debug菜單單擊Run to Cursor,再單擊Step Into,程序遞歸調(diào)用fib函數(shù),又進入fib函數(shù),觀察n的值。

      繼續(xù)執(zhí)行程序,參照上述的方法,觀察程序的執(zhí)行順序,加深對函數(shù)調(diào)用和遞歸調(diào)用的理解。

      再試試Debug菜單欄中的別的菜單項,熟悉Debug的各種方法。

      4、實驗原理

      C++中函數(shù)的重載使得同樣的函數(shù)名下,只要參數(shù)類型、數(shù)目不同時,即可根據(jù)輸入的數(shù)據(jù)進行相應(yīng)的函數(shù)調(diào)用,使用起來簡單方便。

      5、思考與體會

      C++中,函數(shù)的運用與之前學(xué)過的C語言既有相同之處,也有著不同的地方。相同的地方在于格式、用法等框架上的不變。但是C語言中對于同樣的函數(shù)名是只能夠申明一種函數(shù)的,倘若有相同的函數(shù)名出現(xiàn)系統(tǒng)即會報錯,所以用起來有時是極為不便

      0

      //參數(shù)為兩個雙精度浮點形的函數(shù) int max1(double a,double b){ a=a>b?a:b;return a;} //參數(shù)為三個雙精度浮點形的函數(shù) int max1(double a,double b,double c){ a=a>b?a:b;a=a>c?a:c;return a;} void main(void){ int a;double b;a=max1(1,2);cout<

      Lab3_3: #include using namespace std;int max1(int a,int b){ a=a>b?a:b;return a;} int max1(int a,int b,int c){ a=a>b?a:b;a=a>c?a:c;return a;}

      int main(){ int i,j,k;cout<<“請輸入要比較的3個數(shù):

      ”<

      2131415

      public: Rank rank;int frequency;float voltage;CPU(Rank r,int f,float v){

      //構(gòu)造函數(shù)

      cout<<“構(gòu)造了一個CPU”<

      rank=r;

      frequency=f;

      voltage=v;} void run(){

      cout<<“CPU開始運行”<

      } void stop(){

      cout<<“CPU停止運行”<

      cout<<“RANK=”<

      cout<<“frequency=”<

      cout<<“voltage=”<

      };

      int main(){ CPU cpu(p5,500,2000);cpu.run();cpu.show();cpu.stop();return 0;}

      Lab4_2 #include using namespace std;enum Rank{p1=1,p2,p3,p4,p5,p6,p7};//CPU類 class CPU{ public:

      //析構(gòu)函數(shù)-17

      computer(Rank r,int f,float v){

      CPU cpu(r,f,v);

      //定義CPU對象

      RAM ram(1);

      //定義RAM對象

      CDROM cdrom(1);

      //定義CDROM對象

      cpu.run();

      cpu.show();

      cpu.stop();} };int main(){ computer com(p4,300,3000);return 0;}

      實驗

      七、繼承與派生(一、二)4學(xué)時

      1、實驗?zāi)康模?/p>

      學(xué)習(xí)定義和使用類的繼承關(guān)系,定義派生類。熟悉不同繼承方式下對基類成員的訪問控制。學(xué)習(xí)利用虛基類解決二義性問題

      2、實驗任務(wù) a)定義一個基類Animal,有私有整型成員變量age,構(gòu)造其派生類dog,在其成員函數(shù)SetAge(int n)中直接給age賦值,看看會有什么問題,把age改為公有成員變量,還會有問題嗎?編程試試看。b)定義一個基類BaseClass,有整型成員變量Number ,構(gòu)造其派生類DerivedClass,觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的執(zhí)行情況。c)定義一個車(vehicle)基類,具有MaxSpeed、Weight等成員變量,Run、Stop等成員函數(shù),由此派生出自行車(bicycle)類、汽車(motorcar)類。自行車類有高度(height)等屬性,汽車類有座位數(shù)(SeatNum)等屬性。從bicycle和motorcar派生出摩托車(motorcycle)類,在繼承過程中,注意把vehicle設(shè)置為虛基類。如果不把vehicle設(shè)置為虛基類,會有什么問題?編程試試看。

      3、實驗步驟

      編寫程序定義基類Animal,成員變量age定義為私有的。構(gòu)造派生類dog,在其成員函數(shù)SetAge(int n)中直接對age賦值時,會出現(xiàn)類似以下的錯誤提示:

      error C2248:’age’:cannot access private member declared in class ‘Animal’

      error C2248:’age’:cannot access private member declared in class ‘Animal’

      把age改為公有成員變量后重新編譯就可以了。程序名為:lab7_1.cpp

      0

      確方便我們編程。

      6、部分參考代碼

      Lab7_1 #include using namespace std;

      class Animal{

      public: int age;};

      class dog:public Animal{ public: int SetAge(int n){

      age=n;

      return age;} };

      void main(void){ int age;dog d;age=d.SetAge(3);cout<<“age=”<

      Lab7_2 #include using namespace std;class BaseClass{ public: int Number;BaseClass(){

      cout<<“這是父類的構(gòu)造函數(shù)”<

      cout<<“這是父類的析構(gòu)函數(shù)”<

      //Motorcycle繼承bicycle和motorcar類

      class motorcycle:public bicycle,public motorcar{ public: motorcycle(int seat,double H,double MS,double W){

      SeatNum=seat;

      height=H;

      MaxSpeed=MS;

      Weight=W;} void show(){

      cout<<“seatnum=”<

      cout<<“height=”<

      cout<<“MaxSpeed=”<

      cout<<“weight=”<

      int main(){ motorcycle che(3,30.33,90.84,500);che.show();return 0;} 實驗

      八、多態(tài)性2學(xué)時

      1、實驗?zāi)康模?/p>

      掌握運算符重載的方法

      習(xí)使用虛函數(shù)實現(xiàn)動態(tài)多態(tài)性。

      2、實驗任務(wù)

      a)定義Point類,有坐標(biāo)x,y兩個成員變量;對Point類重載“++”、“--”運算符,實現(xiàn)對坐標(biāo)值的改變。

      定義一個車(vehicle)基類,有Run、Stop等成員函數(shù),由此派生出自行車(bicycle)類、汽車(motorcar)類,從bicycle和motorcar派生出摩托車(motorcycle)類,它們都有Run、Stop等成員函數(shù)。觀察虛函的作用。

      3、實驗步驟

      編寫程序定義Point類,在類中定義整型的私有成員變量x,y,定義成員函數(shù)Point& operator++();Point operator++(int);以實現(xiàn)對Point類重載“++”運算符,定義成函數(shù)Point& operator –();Point operator

      也就是函數(shù)的重載。

      6、部分參考代碼

      Lab8_1 #include using namespace std;

      class Point{ public: Point(double x=0.0,double y=0.0):xray(x),yray(y){} Point operator++(int);Point operator--(int);void show();private: double xray;double yray;};

      Point Point::operator++(int){ return Point(xray++,yray++);}

      Point Point::operator--(int){ return Point(xray--,yray--);}

      void Point::show(){ cout<<“x坐標(biāo)為”<

      int main(){ Point p(4.5,6.5);cout<<“進行運算前的情況:”<

      show(&v);return 0;}

      第四篇:C++上機實驗報告

      第二次上機實驗報告

      姓名:王小寧

      班級:

      學(xué)號:

      031012 1234

      第一題:

      題目:

      編寫一個類,聲明一個數(shù)據(jù)成員和一個靜態(tài)數(shù)據(jù)成員,其構(gòu)造函數(shù)初始化數(shù)據(jù)成員,并把靜態(tài)數(shù)據(jù)成員加1,其析構(gòu)函數(shù)把靜態(tài)數(shù)據(jù)成員減1.(1)編寫一個應(yīng)用程序,創(chuàng)建該類的3個對象,然后顯示其數(shù)據(jù)成員和靜態(tài)數(shù)據(jù)成員,再析構(gòu)每個對象,并顯示它們對靜態(tài)數(shù)據(jù)成員的影響。

      (2)修改該類,增加靜態(tài)成員函數(shù)并訪問靜態(tài)數(shù)據(jù)成員,并聲明靜態(tài)數(shù)據(jù)成員為保護成員。體會靜態(tài)成員函數(shù)的使用,靜態(tài)成員之間與非靜態(tài)成員之間互訪問題。

      編程思想:

      首先,定義一個類,其中含有兩個類的私有變量,一個靜態(tài)數(shù)據(jù)變量,定義構(gòu)造函數(shù),將初值賦給兩個私有變量,并將靜態(tài)數(shù)據(jù)變量加1,并顯示.定義一個析構(gòu)函數(shù),并通過析構(gòu)函數(shù)將靜態(tài)成員變量減1.并顯示。

      修改以上的類,增加一個靜態(tài)成員函數(shù)并通過靜態(tài)成員函數(shù)來訪問靜態(tài)成員變量。在主函數(shù)中利用一個指向函數(shù)的指針指向這個靜態(tài)成員函數(shù),并通過這個指針來訪問類中的靜態(tài)數(shù)據(jù)。代碼實現(xiàn):

      代碼1:

      #include using namespace std;class A { public:

      static int count;

      A(int a=0,int b=0)

      {

      X=a;

      Y=b;

      count++;

      cout<<“startcount=”<

      count--;

      cout<<“overcount=”<

      int GetX(){return X;}

      int GetY(){return Y;}

      private:

      int X,Y;};int A::count=0;int main(){ int *countp=&A::count;A z(2,3);cout<<“x=”<

      cout<<“x=”<

      問題及心得:

      在這次試驗中,我理解了靜態(tài)變量與普通變量之間的差異與聯(lián)系。在實驗過程中因未初靜態(tài)變量始化而無法通過編譯,并且注意到靜態(tài)變量一定要在類外初始化。

      題目2:

      創(chuàng)建一個Person類,該類中有字符數(shù)組,表示姓名、街道地址、市、省和郵政編碼。其功能有修改姓名、顯示數(shù)據(jù)信息。要求其功能函數(shù)的原型放在類定義中,構(gòu)造函數(shù)初始化每個成員,顯示信息函數(shù)要求把對象中的完整信息打印出來。其中數(shù)據(jù)成員為保護的,函數(shù)為公有的。

      編程思想:

      創(chuàng)建一個PERSON類,定義姓名、街道地址、市、省和郵政編碼分別為CHAR型的指針?biāo)接行妥兞?。在定義公有型的構(gòu)造函數(shù),并在構(gòu)造函數(shù)中申請動態(tài)內(nèi)存來保存初始化的內(nèi)容,并用相應(yīng)的私有性的指針變量指向,再利用復(fù)制函數(shù)則指針中將會存放入輸入內(nèi)容。定義公有的析構(gòu)函數(shù)釋放動態(tài)申請的空間。定義一個公有的改變函數(shù)改變其中一個變量,方法與構(gòu)造函數(shù)相似。

      代碼實現(xiàn):

      #include using namespace std;class Person {

      private:

      char *name;char *street;char *pro;char *city;char *code;

      public: Person(char *aname,char *astreet,char *apro,char *acity,char *acode){

      name=new char[strlen(aname)+1];

      strcpy(name,aname);

      street=new char[strlen(astreet)+1];

      strcpy(street,astreet);

      pro=new char[strlen(apro)+1];

      strcpy(pro,apro);

      city=new char[strlen(acity)+1];

      strcpy(city,acity);

      code=new char[strlen(acode)+1];

      strcpy(code,acode);

      cout<<“constructor”<

      delete[] name;

      delete[] street;

      delete[] pro;

      delete[] city;

      delete[] code;

      cout<<“destructor”<

      delete[] name;

      name=new char[strlen(aname)+1];

      strcpy(name,aname);} void show(){

      cout<<“姓名:”<

      cout<<“街道地址:”<

      cout<<“省份:”<

      cout<<“城市:”<

      cout<<“郵政編碼:”<

      運行結(jié)果:

      實驗心得: 通過這個實驗,我們學(xué)會了對類的私有的字符數(shù)組變量的初始化。利用指針動態(tài)分配空間。

      第五篇:C++上機實驗報告

      C++上機實驗報告

      實驗名稱:實驗

      專業(yè)班級:

      名:

      學(xué)

      號:

      實驗日期: 11 實驗

      目錄

      1.實驗?zāi)康?/p>

      2.實驗內(nèi)容

      3.程序代碼

      4.調(diào)試結(jié)果

      5.實驗心得 1.實驗?zāi)康?實驗10(1)進一步了解運算符重載的概念和使用方法;(2)掌握幾種常用的運算符重載的方法;(3)了解轉(zhuǎn)換構(gòu)造函數(shù)的使用方法;

      (4)了解在Visual C++6.0環(huán)境下進行運算符重載要注意的問題。實驗11(1)了解繼承在面向?qū)ο蟪绦蛟O(shè)計中的重要作用;(2)進一步理解繼承和派生的概念;

      (3)掌握通過繼承派生出一個新的類的方法;(4)了解虛基類的作用和用法。

      2.實驗內(nèi)容 實驗10 事先編好程序,上機進行調(diào)試和運行程序,分析結(jié)果。(1)聲明一個復(fù)數(shù)類Complex,重載運算符“+”,“-”,“*”,“/”,使之能用于復(fù)數(shù)的加,減,乘,除,運算符重載函數(shù)作為Complex類成員的函數(shù)。編程序,分別求兩個復(fù)數(shù)之和,差,積和商。(2)聲明一個復(fù)數(shù)類Complex,重載運算符“+”,使之能用于復(fù)數(shù)的加法運算。參加運算的兩個運算量可以都是類對象,也可以其中有一個是整數(shù),順序任意。

      運行程序,分別求兩個復(fù)數(shù)之和,整數(shù)和復(fù)數(shù)之和,(3)有兩個矩陣a和b,均為2行3列。求兩個矩陣之和。重載運算符“+”,使之能用于兩個矩陣相加

      (4)聲明一個Teacher(教師)類和一個Student(學(xué)生)類,二者有一部分數(shù)據(jù)成員是相同的,例如num(號碼),name(名字),sex(性別)。編寫程序,將一個Student對象(學(xué)生)轉(zhuǎn)換為Teacher(教師)類,只將以上三個相同的數(shù)據(jù)成員移植過去??梢栽O(shè)想為:一位學(xué)生大學(xué)畢業(yè)了,留校擔(dān)任教師,他原有的部分數(shù)據(jù)對現(xiàn)在的教師身份來說任然是有用的,應(yīng)當(dāng)保留并成為其教師的數(shù)據(jù)的一部分。

      實驗11

      事先編寫好程序,上機調(diào)試和運行程序,分析結(jié)果。

      (1)將教材第11章例11.1的程序片段補充和改寫成一個完整的、正確的程序,用公用繼承方式。在程序中應(yīng)當(dāng)包括輸入數(shù)據(jù)的函數(shù),在程序運行時輸入num,name,sex,age,addr的值,程序應(yīng)輸出以上5個數(shù)據(jù)的值。

      (2)將教材第11章例11.3的程序修改、補充,寫成一個完整、正確的程序,用保護繼承方式。在程序中應(yīng)包括輸入數(shù)據(jù)的函數(shù)。(3)修改上面第(2)題的程序,改為用公用繼承方式。上機調(diào)試程序,使之能夠正確運行并得到正確的結(jié)果。

      對這兩種繼承方式做比較分析,考慮在什么情況下二者不能互相替換。

      (4)分別聲明Teacher(教師)類和Cadre(干部)類,采用多 重繼承方式由這兩個類派生出新類Teacher-Cadre(教師兼干部)。要求:

      Ⅰ.在兩個基類中都包含姓名、年齡、性別、地址、電話等數(shù)據(jù)成員。

      Ⅱ.在Teacher類中還包含數(shù)據(jù)成員title(職稱),在Cadre類中還包含數(shù)據(jù)成員post(職務(wù))。在Teacher-Cadre類中還包含數(shù)據(jù)成員wages(工資)。

      Ⅲ.在基類中的姓名、年齡、性別、地址、電話等數(shù)據(jù)成員用相同的名字,在引用這些數(shù)據(jù)成員時,指定作用域。Ⅴ.在類體中聲明成員函數(shù),在類外定義成員函數(shù)。

      Ⅵ.在派生類Teacher-Cadre的成員函數(shù)show中調(diào)用Teacher類中的display函數(shù),輸出性命、年齡、性別、職稱、地址、電話,然后再用cout語句輸出職務(wù)與工資。

      3.程序代碼 實驗10(1)

      #include using namespace std;class Complex {public: Complex(){real=0;imag=0;} Complex(double r,double i){real=r;imag=i;} Complex operator +(Complex &c2);Complex operator-(Complex &c2);Complex operator*(Complex &c2);Complex operator/(Complex &c2);void display();private: double real;double imag;};

      Complex Complex::operator +(Complex &c2){Complex c;c.real=real+c2.real;c.imag=imag+c2.imag;return c;}

      Complex Complex::operator-(Complex &c2){Complex c;c.real=real-c2.real;c.imag=imag-c2.imag;return c;}

      Complex Complex::operator*(Complex &c2){Complex c;c.real=real*c2.real-imag*c2.imag;c.imag=imag*c2.real+real*c2.imag;return c;}

      Complex Complex::operator/(Complex &c2){Complex c;c.real=(real*c2.real+imag*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag);c.imag=(imag*c2.real-real*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag);return c;} void Complex::display(){cout<<“(”<

      (2)

      #include using namespace std;class Complex {public: Complex(){real=0;imag=0;} Complex(double r,double i){real=r;imag=i;} Complex operator+(Complex &c2);Complex operator+(int &i);friend Complex operator+(int &,Complex &);void display();private:

      double real;

      double imag;};

      Complex Complex::operator+(Complex &c){return Complex(real+c.real,imag+c.imag);}

      Complex Complex::operator+(int &i){return Complex(real+i,imag);}

      void Complex::display(){cout<<“(”<

      Complex operator+(int &i,Complex &c){return Complex(i+c.real,c.imag);}

      int main(){Complex c1(3,4),c2(5,-10),c3;int i=5;c3=c1+c2;cout<<“c1+c2=”;c3.display();c3=i+c1;cout<<“i+c1=”;c3.display();c3=c1+i;cout<<“c1+i=”;c3.display();return 0;}(3)

      #include using namespace std;class Matrix {public: Matrix();friend Matrix operator+(Matrix &,Matrix &);void input();void display();private:

      int mat[2][3];};

      Matrix::Matrix(){for(int i=0;i<2;i++)for(int j=0;j<3;j++)mat[i][j]=0;}

      Matrix operator+(Matrix &a,Matrix &b){Matrix c;for(int i=0;i<2;i++)for(int j=0;j<3;j++){c.mat[i][j]=a.mat[i][j]+b.mat[i][j];} return c;}

      void Matrix::input(){cout<<“input value of matrix:”<>mat[i][j];}

      void Matrix::display(){for(int i=0;i<2;i++){for(int j=0;j<3;j++){cout<

      #include using namespace std;class Student {public: Student(int,char[],char,float);int get_num(){return num;} char * get_name(){return name;} char get_sex(){return sex;} void display(){cout<<“num:”<

      int num;

      char name[20];

      char sex;

      float score;};

      Student::Student(int n,char nam[],char s,float sco){num=n;strcpy(name,nam);sex=s;score=sco;}

      class Teacher {public: Teacher(){} Teacher(Student&);Teacher(int n,char nam[],char sex,float pay);void display();private:

      int num;

      char name[20];

      char sex;

      float pay;};

      Teacher::Teacher(int n,char nam[],char s,float p} {num=n;strcpy(name,nam);sex=s;pay=p;}

      Teaxher::Teacher(Student& stud){num=stud.get_num();strcpy(name,stud.get_name());sex=stud.get.sex();pay=1500;}

      void Teacher::display(){cout<<“num:”<int main(){Teacher teacher1(10001,”Li“,'f',1234.5),teacher2;Student student1(20010,”Wang“,'m',89.5);cout<<”student1:“<

      #include using namespace std;class Student {public:

      void get_value()

      {cin>>num>>name>>sex;}

      void display()

      {cout<<”num:“<

      cout<<”sex:“<

      int num;

      char name[10];char sex;};

      class Student1:public Student {public: void get_value_1(){get_value();cin>>age>>addr;} void display_1(){cout<<”age:“<

      char addr[30];};

      int main(){Student1 stud1;stud1.get_value_1();stud1.display();stud1.display_1();return 0;}(2)

      #include using namespace std;class Student {public: void get_value();

      void display();protected: int num;

      char name[10];

      char sex;};

      void Student::get_value(){cin>>num>>name>>sex;} void Student::display(){cout<<”num:“<

      class Student1:protected Student {public: void get_value_1();void display1();private: int age;char addr[30];};

      void Student1::get_value_1(){get_value();cin>>age>>addr;} void Student1::display1(){cout<<”num:“<

      int main(){Student1 stud1;stud1.get_value_1();stud1.display1();return 0;}(3)

      #include using namespace std;class Student {public: void get_value();void display();protected:

      int num;

      char name[10];

      char sex;};

      void Student::get_value(){cin>>num>>name>>sex;}

      void Student::display(){cout<<”num:“<

      class Student1:public Student {public: void get_value_1();void display1();private:

      int age;

      char addr[30];};

      void Student1::get_value_1(){get_value();cin>>age>>addr;} void Student1::display1(){cout<<”num:“<

      int main(){Student1 stud1;stud1.get_value_1();stud1.display1();return 0;}(4)

      #include #include using namespace std;class Teacher {public:

      Teacher(int,char[],char);void display();private: int num;char name[20];char sex;};

      Teacher::Teacher(int n,char nam[],char s){num=n;strcpy(name,nam);sex=s;}

      void Teacher::display(){cout<<”num:”<

      class BirthDate {public: BirthDate(int,int,int);void display();void change(int,int,int);private: int year;int month;int day;};

      BirthDate::BirthDate(int y,int m,int d){year=y;month=m;day=d;}

      Void BithDate::display(){cout<<”birthday:”<

      void BirthDate::change(int y,int m,int d){year=y;month=m;day=d;}

      class Professor:public Teacher {public: Professor(int,char[],char,int,int,int,float);void display();void change(int,int,int);private: float area;BirthDate birthday;}

      Professor::Professor(int n,char name[20],char s,int y,int m,int d,float a): Teacher(n,name,s),birthday(y,m,d),area(a){}

      void Professor::display(){Teacher::display();birthday.display();cout<<”area:”<

      Int main(){Professor profl(3012,”Zhang”,’f’,1949,10,1,125.4);cout<

      4.調(diào)試結(jié)果

      實驗10(1)c1+c2=(8,-6i)c1-c2=(-2,14i)c1*c2=(55,-10i)c1/c2=(-0.2,0.4)(2)c1+c2=(8,-6i)i+c1=(8,4i)c1+i=(8,4i)

      (3)

      input value of Matrix:11 22 33 44 55 66 input value of Matrix:12 13 14 15 16 17 Matrix a: 11 22 33 44 55 66 Matrix b: 12 13 14 15 16 17 Matrix c=Matrix a + Matrix b : 23 25 47 59 71 83

      (4)student1 : num :20010 name:Wang sex:m score;89.5 Teacher2: num:20010 name:Wang sex:m pay:1500

      實驗11(1)

      10101 Li M 20 Beijing num:10101 name:Li sex:M age:20 address:Beijing

      (2)

      10101 Li M 20 Beijing num:10101 name:Li sex:M age:20 address:Beijing

      (3)

      10101 Li M 20 Beijing num:10101 name:Li sex:M age:20 address:Beijing

      (4)The original data: num:3012 name:Zhang sex:f area:125.4

      The new data: num:3012 name:Zhang sex:f birthday:6/1/1950 area:125.4 5.實驗心得

      這一次上機實驗,除了了解到了運算符重載的概念和用法,掌握幾種常用的運算符重載的方法,了解轉(zhuǎn)換構(gòu)造函數(shù)的使用方法,同時也能了解虛基類的用法,理解繼承與派生的概念。

      但是,最主要的,我覺得,是通過這一次的上機實驗,我了解到,有的實驗本身是沒有程序錯誤的,但是,也會由于實驗環(huán)境的影響而不能正常運行。換句話說,有的程序并不能在Visaul C++的環(huán)境下運行,而不是程序自身的問題。所以,對于沒辦法調(diào)試成功的程序,我們也不能一味的認為程序有錯誤,要學(xué)會理性的判斷程序的對錯,再下結(jié)論。

      下載西南交大c++實驗報告11word格式文檔
      下載西南交大c++實驗報告11.doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關(guān)證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        西南交大歷史

        西南交大百年歷史1.全國解放前的五次遷徙(1900-1949)(1)山海關(guān)校舍在1900年(庚子年)被八國聯(lián)軍強占,曾使我校歷史一度中斷當(dāng)時的校名是山海關(guān)北洋鐵路學(xué)堂,歸北洋鐵路總局領(lǐng)......

        西南交大自薦信

        2014年西南交通大學(xué)自主招生自薦信 尊敬的西安交通大學(xué)招生處老師:您好!我是安徽省阜陽市第一中學(xué)高三學(xué)生李文亞。我希望通過貴校的自主招生來實現(xiàn)在西南交通大學(xué)學(xué)習(xí)的夢想!......

        西南交大,自我鑒定

        自我鑒定 為進一步增強個人綜合素質(zhì),提升交通運輸專業(yè)化知識水平,不斷更新觀念,充實自我,以適應(yīng)社會經(jīng)濟發(fā)展對交通運輸管理人員的新要求,本人于2013年報考參加了西南交通大學(xué)網(wǎng)......

        《C++程序設(shè)計》實驗報告范例

        注意:以下藍色文字部分根據(jù)情況增刪實驗1熟悉VC++6.0集成開發(fā)環(huán)境 一、實驗時間: 2011年9月20日 二、實驗地點: 第7機房 三、指導(dǎo)教師: 鄧譜 四、實驗?zāi)康模?1. 了解VC++6.0的主要......

        C++課程設(shè)計實驗報告(范文)

        C++課程設(shè)計報告 設(shè)計題目:學(xué)院: 專業(yè)班級: 學(xué)生姓名: 學(xué)生學(xué)號: 指導(dǎo)教師: 計算機技術(shù)與科學(xué) 3班 樊冠男 40912140 馬軍亮 提交時間: 2011/1/12 成績: 目錄 C++課程設(shè)計報告 第一......

        西南交大求學(xué)自薦信

        西南交大求學(xué)自薦信 西南交大求學(xué)自薦信1 尊敬的校領(lǐng)導(dǎo):您們好!我叫劉俊秀,女,今年十八歲。是遼寧省東港市第一中學(xué)高三理科重點班的一名學(xué)生。首先我對您能在百忙中讀這封信深......

        西南交大求學(xué)自薦信

        您們好!我叫劉俊秀,女,今年十八歲。是遼寧省東港市第一中學(xué)高三理科重點班的一名學(xué)生。首先我對您能在百忙中讀這封信深表感謝!因為哥哥姐姐都是西南交大的學(xué)子,一直以來,西南交......

        西南交大《線性代數(shù)》主觀題

        《線性代數(shù)》主觀題 第一次作業(yè) 答案: 答案:0 答案:t=3 答案: 答案: 答案:3 答案:3 答案:23. 答案: 解: 解: 26. 解: 第二次作業(yè)答案: 答案:答案: 答案: 答案:答案: 答案: 答案: 第三次作業(yè)......