




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上華南農(nóng)業(yè)大學(xué)課程設(shè)計(jì)報(bào)告所屬課程名稱:計(jì)算機(jī)網(wǎng)絡(luò)及其應(yīng)用計(jì)劃學(xué)時(shí):2周開設(shè)時(shí)間:2005學(xué)年第一學(xué)期 授課學(xué)生: 02計(jì)算機(jī)科學(xué)與技術(shù)2班 授課人數(shù): 人指導(dǎo)教師:周敏華 南 農(nóng) 業(yè) 大 學(xué) 信 息 學(xué) 院計(jì)算機(jī)網(wǎng)絡(luò)課程設(shè)計(jì)成績(jī)單開設(shè)時(shí)間:2005年第一學(xué)期專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)班 級(jí)02計(jì)2小組人數(shù):1成員馮紹欣課程設(shè)計(jì)目的IP地址的合法性及子網(wǎng)的判斷成員分配教 師 評(píng) 語評(píng)價(jià)指標(biāo):l 題目?jī)?nèi)容完成情況 優(yōu) 良 中 差 l 對(duì)原理的理解程度 優(yōu) 良 中 差 l 報(bào)告結(jié)構(gòu)清晰 優(yōu) 良 中 差 l 總結(jié)和分析詳盡 優(yōu) 良 中 差 成績(jī)教師簽名:1)課程設(shè)計(jì)目的 了解IP地
2、址的定義,劃分和子網(wǎng)的概念。(2)課程設(shè)計(jì)要求 1輸入命令格式:IP_test subnet/mask ip_addr 2判斷subnet和ip_addr的合法性3判斷掩碼的合法性 4在IP地址合法的前提下,判斷ip_addr是否屬于子網(wǎng)subnet(3)相關(guān)知識(shí) 因特而的網(wǎng)際協(xié)議IP,劃分子網(wǎng)(4)程序函數(shù)分析 compart()字符串分隔轉(zhuǎn)十進(jìn)制函數(shù):把存放到subnet20,mask20,ip20的標(biāo)準(zhǔn)十進(jìn)制表示的地址分隔成4個(gè)不含點(diǎn)的字符串放到字符數(shù)s15,s25,s35,s45中,再用atoi()轉(zhuǎn)成十進(jìn)制放到指針*x,*y,*z,*w當(dāng)中。具體做法是用3個(gè)整形參數(shù)p1,p2,p3存
3、放掃描到subnet20,mask20,ip20的點(diǎn)并記錄其位置,然后把位置0,p1,p2,p3,末端位置之間的字符分別傳到s15,s25,s35,s45,再調(diào)用atoi()轉(zhuǎn)成十進(jìn)制。 ipvalidity()判斷ip合法與否函數(shù):把已經(jīng)轉(zhuǎn)成十進(jìn)制的地址傳入(4個(gè)十進(jìn)制數(shù)),最高位范圍是1223,其他位是0255,然后根據(jù)范圍作出判斷是否合法。 maskvalidity()判斷mask是否合法函數(shù):用數(shù)組a7存放8位二進(jìn)制數(shù)從左到右連續(xù)位1時(shí)的十進(jìn)制值,255除外,共7個(gè)。最高位x!=255時(shí),判斷x是否在a中,并且后面三個(gè)字節(jié)是否都為0,則是合法,否則違法。次高位y!=255時(shí),判斷y是否
4、在a中,并且后面兩個(gè)字節(jié)是否都為0,或者x=255,y,z,w是否都為0合法,是合法,否則都違法。下面如次類推。check()判斷ip是否屬于子網(wǎng)函數(shù):mask和ip相與,放到b中,存放subnet的a和b相等則ip屬于subnet (5)源程序連注析: #include "Stdio.h"#include "Conio.h"#include "string.h"compart(char string20,int *x,int *y,int *z,int *w) /*把subnet20,mask20,ip20*/ int i,j=0,
5、p1,p2,p3,slen; /*轉(zhuǎn)為十進(jìn)制放到a,b,c中*/ char s15,s25,s35,s45; slen=strlen(string); for(i=0;i<=slen;i+) if(stringi='.') p1=i; break; for(i=p1+1;i<=slen;i+) if(stringi='.') p2=i; break; for(i=p2+1;i<=slen;i+) if(stringi='.') p3=i; break; for(i=0;i<p1;i+) s1j=stringi; j+; s
6、1j='0' j=0; for(i=p1+1;i<p2;i+) s2j=stringi; j+; s2j='0' j=0; for(i=p2+1;i<p3;i+) s3j=stringi; j+; s3j='0' j=0; for(i=p3+1;i<slen;i+) s4j=stringi; j+; s4j='0' *x=atoi(s1); /*字符串轉(zhuǎn)十進(jìn)制*/ *y=atoi(s2); *z=atoi(s3); *w=atoi(s4);ipvalidity(int x,int y,int z,int w) /
7、*根據(jù)IP地址的范圍判斷IP是否合法*/ int sign=1; /*IP合法sign為1,否則為0*/ while(1) if(x<1|x>223) printf("The IP is irregularity!n"); sign=0; break; if(y<0|y>255|z<0|z>255|w<0|w>255) printf("The IP is irregularity!n"); sign=0; break; if(w<0|w>255) printf("The IP is i
8、rregularity!n"); sign=0; break; break; return(sign);maskvalidity(int x,int y,int z,int w) /*判斷mask是否合法*/ int i,flag; int a7=128,192,224,240,248,252,254; /*a7存放8位二進(jìn)制數(shù)從左到右連續(xù)位1時(shí)的十進(jìn)制值,255除外*/ while(1) if(x!=255) for(i=0;i<7;i+) /*x!=255時(shí),判斷x是否在a中,并且后面三個(gè)字節(jié)都為0,則是合法*/ if(x=ai&&y=0&&
9、z=0&&w=0) /*否則違法*/ flag=0; break; else flag=1; if(flag=1) printf("The mask is irregularity!n"); break; if(y!=255) /*y!=255時(shí),判斷y是否在a中,并且后面兩個(gè)字節(jié)都為0,則是合法*/ for(i=0;i<7;i+) if(y=ai&&z=0&&w=0|y=0&&z=0&&w=0) /*或者x=255,y,z,w都為0合法,否則都違法*/ flag=0; break; /*
10、下面如次類推*/ else flag=1; if(flag=1) printf("The mask is irregularity!n"); break; if(z!=255) for(i=0;i<7;i+) if(z=ai&&w=0|z=0&&w=0) flag=0; break; else flag=1; if(flag=1) printf("The mask is irregularity!n"); break; if(w!=255) for(i=0;i<7;i+) if(w=ai|w=0) flag=0
11、; break; else flag=1; if(flag=1) printf("The mask is irregularity!n"); break; check(int a1,int a2,int a3,int a4,int b1,int b2,int b3,int b4,int c1,int c2,int c3,int c4) b1=b1&c1;b2=b2&c2;b3=b3&c3;b4=b4&c4; /*mask和ip相與,放到b中,存放subnet的a和b相等*/ if(a1=b1&&a2=b2&&a
12、3=b3&&a4=b4) /*則ip屬于subnet*/ printf("n the ip in the subnet!"); else printf("n the ip out the subnet!");main(int argc,char *argv) /*指針數(shù)組作為main的參數(shù)*/int a1,a2,a3,a4; /*a,b,c分別存放subnet,mask,ip的4位十進(jìn)制的數(shù)*/ int b1,b2,b3,b4; int c1,c2,c3,c4; int i,j=0,t,z,sign1,sign2; /*sign1,sig
13、n2分別是subne,ip是否合法的標(biāo)志位*/ char s50,subnet20,mask20,ip20; strcpy(s,argv1); /*下面是把截取到的字符串分別放到subnet20,mask20,ip20*/ strcpy(ip,argv2); z=strlen(s); for(i=0;i<=z;i+) if(si='/') t=i; for(i=0;i<t;i+) subneti=si; for(i=t+1;i<=z;i+) if(si!=' ') maskj=si; j+; maskj='0' compart(subnet,&a1,&a2,&a3,&a4); /*截取subnet的各字節(jié),以十進(jìn)制放到a1,a2,a3,a4中*/ compart(mask,&b1,&b2,&b3,&b4); compart(ip,&c1,&c2,&c3,&c4); sign1=ipvalidity(a1,a2,a3,a4); /*判斷subnet是否合法*/
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 專題4.4 正弦定理和余弦定理及其應(yīng)用(原卷版)-2024年高考數(shù)學(xué)一輪復(fù)習(xí)精講精練寶典(新高考專用)
- 拉桿式雨棚施工方案
- 燃?xì)馔茝V知識(shí)培訓(xùn)課件
- 2024年海南省中考滿分作文《點(diǎn)亮勤奮這盞燈》
- 農(nóng)村房間流轉(zhuǎn)合同范例
- 公司設(shè)備購貨合同范例
- 水利行業(yè)保安工作總結(jié)計(jì)劃
- 跨境電商倉儲(chǔ)管理的經(jīng)驗(yàn)與反思計(jì)劃
- 第二章 第一節(jié) 二 緯線與緯度 經(jīng)線與經(jīng)度教學(xué)設(shè)計(jì)-2024-2025學(xué)年湘教版初中地理七年級(jí)上冊(cè)
- 八年級(jí)地理下冊(cè) 6.2 白山黑水 東北三省教學(xué)實(shí)錄 (新版)新人教版
- 近代德國(guó)的學(xué)前教育課件
- 球墨鑄鐵正火工藝
- 中國(guó)神經(jīng)外科重癥患者營(yíng)養(yǎng)治療專家共識(shí)(2022版)課件
- 裝修項(xiàng)目經(jīng)理簡(jiǎn)歷
- (完整版)管理學(xué)專業(yè)英語詞匯大全
- 《隆中對(duì)》教學(xué)講解課件
- 污水處理項(xiàng)目運(yùn)營(yíng)期績(jī)效考核評(píng)分表
- 蒙迪歐維修手冊(cè)
- 香味的分類(撲卻分類法)
- 鹽城市殘疾人康復(fù)機(jī)構(gòu)認(rèn)定暫行辦法
- 大學(xué)生心理健康教育-大學(xué)生心理健康導(dǎo)論
評(píng)論
0/150
提交評(píng)論