




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、一、 實(shí)驗(yàn)?zāi)康膶懸粋€(gè)程序來(lái)模擬網(wǎng)橋功能。二、實(shí)驗(yàn)環(huán)境pc機(jī) windows 7操作系統(tǒng)三、實(shí)驗(yàn)內(nèi)容模擬實(shí)現(xiàn)網(wǎng)橋的轉(zhuǎn)發(fā)功能,以從文件中讀取幀模擬網(wǎng)橋從網(wǎng)絡(luò)中收到一幀,即從兩個(gè)文件中讀入一系列幀,從第一個(gè)文件中讀入一幀然后從第二個(gè)文件中再讀入一幀,如此下去。對(duì)每一幀,顯示網(wǎng)橋是否會(huì)轉(zhuǎn)發(fā)。3.1程序演示建立兩個(gè)名為net1和net2的txt文檔,輸入以下值,每?jī)蓚€(gè)字母作為一個(gè)幀,每個(gè)幀中首字母表示源地址,末字母表示目的地址.程序運(yùn)行效果如下:3.2項(xiàng)目設(shè)計(jì)報(bào)告程序設(shè)計(jì)思路及實(shí)現(xiàn)交替讀取兩個(gè)文件內(nèi)的數(shù)據(jù),然后查找轉(zhuǎn)發(fā)表。如果找不到則提示并將源地址和接口信息加入轉(zhuǎn)發(fā)表中,如果找到則提示轉(zhuǎn)發(fā)到哪個(gè)接口,如
2、果數(shù)據(jù)中源地址和目的地址都來(lái)自同一接口則提示不轉(zhuǎn)發(fā)。程序流程圖開(kāi)始打開(kāi)net1.txt和net2.txt順序交替讀取兩個(gè)文件內(nèi)容查找轉(zhuǎn)發(fā)表判斷返回值情況 否文件讀取結(jié)束查找失敗,無(wú)法轉(zhuǎn)發(fā)源和目的數(shù)據(jù)在同一接口,不轉(zhuǎn)發(fā)轉(zhuǎn)發(fā)至相應(yīng)接口 是程序結(jié)束開(kāi)發(fā)中遇到的問(wèn)題及解決辦法開(kāi)發(fā)中碰到了轉(zhuǎn)發(fā)表和數(shù)據(jù)幀的數(shù)據(jù)結(jié)構(gòu)設(shè)置問(wèn)題、查找轉(zhuǎn)發(fā)表問(wèn)題以及源和目的地址在同個(gè)接口不需要轉(zhuǎn)發(fā)問(wèn)題。解決方法:轉(zhuǎn)發(fā)表和數(shù)據(jù)幀使用結(jié)構(gòu)體,在查找轉(zhuǎn)發(fā)表函數(shù)中設(shè)置兩個(gè)臨時(shí)變量,分別存放源地址和目的地址對(duì)應(yīng)的接口,最后將兩個(gè)臨時(shí)變量比對(duì)。程序中待解決的問(wèn)題及改進(jìn)的方向(1)等解決的問(wèn)題:只能模擬兩個(gè)接口的網(wǎng)橋,界面不友好沒(méi)有用到面向?qū)?/p>
3、象,程序沒(méi)有封裝性和可復(fù)用性對(duì)于轉(zhuǎn)發(fā)表的查找沒(méi)有高效算法。(2)改進(jìn):使用面向?qū)ο蠹夹g(shù)和相關(guān)設(shè)計(jì)模式,使用圖形用戶界面,使用二分查找、哈希查找等高效算法。四、實(shí)驗(yàn)總結(jié)通過(guò)本次實(shí)驗(yàn)加深理解了網(wǎng)橋的工作原理以及轉(zhuǎn)發(fā)表的自學(xué)習(xí)方法,提高了用編程方法分析解決問(wèn)題的能力。附:程序源代碼#include <fstream>#include <iostream>using namespace std;#define intercount 2 /接口數(shù)量#define tablemaxcount 255 /轉(zhuǎn)發(fā)表最大數(shù)量int tablecount=0; /全局變量,轉(zhuǎn)發(fā)表數(shù)量int
4、i;struct trantable /轉(zhuǎn)發(fā)表結(jié)構(gòu)體char inter; /接口char dest; /目的地址tabletablemaxcount = 0,0,0,0;struct dataframe /數(shù)據(jù)幀結(jié)構(gòu)體char source; /源地址char dest;/目的地址;void updatetable(struct dataframe data,int inter)/更新轉(zhuǎn)發(fā)表tabletablecount.dest = data.source;er = inter;tablecount+; /轉(zhuǎn)發(fā)表數(shù)量+1int searchtable(
5、struct dataframe data) /查找轉(zhuǎn)發(fā)表int temp1=0,temp2=0;for(i=0; i < tablecount; i+)if(tablei.dest = data.dest) temp1 =er;if(tablei.dest = data.source)temp2 = er;if(temp1 = temp2 && temp1 && temp2) return 3;else if(!temp1)return 0;else return temp1;/交替讀取文件/查找網(wǎng)橋轉(zhuǎn)發(fā)表/查找成
6、功則輸出接口目的,失敗則學(xué)習(xí)int main()int flag; /標(biāo)志變量,0表示查找失敗,1和2分別表示接口1和2struct dataframe data; /數(shù)據(jù)幀,有源地址和目的地址,分別用一個(gè)字母表示fstream net1fin("net1.txt"),net2fin("net2.txt"); while( !net1fin.eof() && !net2fin.eof() )net1fin >> data.source >> data.dest; /讀取一個(gè)幀flag = searchtable(d
7、ata);/查找轉(zhuǎn)發(fā)表switch(flag)case 0:cout <<"幀(源地址:"<<data.source<<",目的地址:"<<data.dest<<")無(wú)法轉(zhuǎn)發(fā)"<<endl;updatetable(data,1);break;case 3:cout <<"幀(源地址:"<<data.source<<",目的地址:"<<data.dest<<"
8、;)在同一接口,不轉(zhuǎn)發(fā)"<<endl;break;default:cout <<"幀(源地址:"<<data.source<<",目的地址:"<<data.dest<<")轉(zhuǎn)發(fā)至接口:"<<flag<<endl;break;net2fin >> data.source >> data.dest; /讀取一個(gè)幀flag = searchtable(data);/查找轉(zhuǎn)發(fā)表switch(flag)case 0:
9、cout <<"幀(源地址:"<<data.source<<",目的地址:"<<data.dest<<")無(wú)法轉(zhuǎn)發(fā)"<<endl;updatetable(data,2);break;case 3: cout <<"幀(源地址:"<<data.source<<",目的地址:"<<data.dest<<")在同一接口,不轉(zhuǎn)發(fā)"<<endl;break;default:cout <<"幀(源地址:"<<da
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 技術(shù)服務(wù)轉(zhuǎn)讓協(xié)議
- 高速邊坡植草施工方案
- 建筑勞務(wù)擴(kuò)大分包合同
- 珠海自建房庭院施工方案
- 2025年文言文高中試題及答案
- 2025年業(yè)務(wù)運(yùn)營(yíng)類面試題及答案
- 2025年微積分上冊(cè)考試題及答案
- 基坑回填專項(xiàng)施工方案
- 平房墻體翻新施工方案
- 2025年特種線纜材料合作協(xié)議書
- qc小組活動(dòng)記錄
- Book Unit Learning Chinese Style的實(shí)用學(xué)習(xí)課件
- 益盟軟件使用說(shuō)明書
- GB/T 778.1-2007封閉滿管道中水流量的測(cè)量飲用冷水水表和熱水水表第1部分:規(guī)范
- GB/T 34754-2017家庭牧場(chǎng)草地放牧強(qiáng)度分級(jí)
- GB/T 28572-2012大中型水輪機(jī)進(jìn)水閥門系列
- GB/T 21287-2021電子特氣三氟化氮
- GB/T 13818-2009壓鑄鋅合金
- CB/T 3780-1997管子吊架
- 2009-2022歷年湖北省選調(diào)生招錄考試《綜合知識(shí)和行政職業(yè)能力測(cè)驗(yàn)》真題含答案帶詳解2022-2023上岸資料匯編1
- 錫精礦進(jìn)口中英文合同模板
評(píng)論
0/150
提交評(píng)論