文件管理系統(tǒng)試驗報告_第1頁
文件管理系統(tǒng)試驗報告_第2頁
文件管理系統(tǒng)試驗報告_第3頁
文件管理系統(tǒng)試驗報告_第4頁
文件管理系統(tǒng)試驗報告_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實驗成績姓名任倩倩 倪晨學號20112105902011210542華中師范大學計算機科學系實驗報告書實驗題目: 基于兩級目錄結(jié)構(gòu)的簡單文件系統(tǒng)的管理與操作課程名稱:操作系統(tǒng)主講教師:葉俊民教授輔導教師:葉俊民教授班 級:l_j實驗時間:2013年12月10日目錄CDIO性質(zhì)的實踐步驟:2構(gòu)思性實踐(C)(做什么)2設(shè)計性實踐(D)(準備怎么做)2實現(xiàn)性實踐(1)(做的結(jié)果)2運行性實踐(0)(做的方式)3一、實驗目的3二、實驗內(nèi)容3三、實驗壞境3四、實驗詳細實現(xiàn)過程與算法流程3五、源程序(加注釋)5六、實驗結(jié)果19CDIO性質(zhì)的實踐步驟:構(gòu)思性實踐(C)采用兩級目錄,即設(shè)置主文件目錄MFD和

2、用戶文件目錄UED o在主文件目 錄中,每個用戶目錄都占有一個目錄項,其目錄項中包含文件名和指向該文件目 錄文件。在用戶文件目錄UFD中,這些文件目錄具有相似的結(jié)構(gòu)。具體測試時可 考慮:設(shè)計一個10個用戶的文件系統(tǒng),每次用戶可保存10個文件,一次運行用 戶可以打開5個文件,并需要對文件設(shè)置保護措施。(2)設(shè)計并實現(xiàn) Create Open、Read Write、Close、Delete 等文件命令的 算法,用戶可通過菜單方式或者API方式實現(xiàn)對自己文件的管理。設(shè)計性實踐(D)1、確定基本數(shù)據(jù)結(jié)構(gòu),MFD, UFD. , Userinf, Fileinf, File,以及每個數(shù) 據(jù)結(jié)構(gòu)可以進行的

3、對應操作。2、確定每個函數(shù)的參數(shù)、返回對象,并且完成每個函數(shù),沒完成一個函數(shù), 需要進行一次測試。3、確定用戶菜單,并將用戶菜單與對應的函數(shù)操作進行關(guān)聯(lián)。4、完整測試每個功能,找出存在的缺陷,并對用戶界面做適當調(diào)整。具體 可參見本實驗報告的“三、實驗環(huán)境”和“四、實驗設(shè)計原理”。實現(xiàn)性實踐1、完成代碼編寫,形成.c源文件與.exe可執(zhí)行文件;2、進行演示,演示應包含所有功能點,將演示結(jié)果截圖保存;完成實驗報告說明,具體可參見本實驗報告的“五、實驗詳細實現(xiàn)過程與算 法流程”、“六、實驗調(diào)試”和“七、源程序”。運行性實踐(O)1、小組成員確定程序需要完成的功能,并詳細列出功能點為后期檢查程序是否滿

4、足需求做準備。2、確定編碼人員,由編碼人員完成基本編碼工作,另一人負責對完成的程 序進行測試,檢查是否滿足所有的功能點。3、對不滿足的功能點或缺少的功能點進行修改或增加,重復第2步,直至 符合要求。4、完成上機驗收。具體可參見本實驗報告的和“九、實驗結(jié)果分析”和“十一、實驗總結(jié)”。一、實驗目的:為了模擬文件系統(tǒng)實現(xiàn)的基本功能,了解文件系統(tǒng)的基本結(jié)構(gòu)和文件的各種 管理方法,加深理解文件系統(tǒng)的內(nèi)部功能及內(nèi)部實現(xiàn),理解文件管理的工作過程, 加深各種文件操作命令的實質(zhì)內(nèi)容和執(zhí)行過程的了解,現(xiàn)要求編程模擬一個簡單 的文件系統(tǒng),以實現(xiàn)對文件系統(tǒng)的管理和控制功能,支持用戶對自己文件的管理 與操作。二、實驗內(nèi)

5、容:(1) 要求本文件系統(tǒng)采用兩級目錄,即設(shè)置主文件目錄MFD和用戶文件目錄 UED o在主文件目錄中,每個用戶目錄都占有一個目錄項,其目錄項中 包含文件名和指向該文件目錄文件。在用戶文件目錄UFD中,這些文件目 錄具有相似的結(jié)構(gòu)。具體測試時可考慮:設(shè)計一個10個用戶的文件系統(tǒng), 每次用戶可保存10個文件,一次運行用戶可以打開5個文件,并需要對 文件設(shè)置保護措施。(2) 設(shè)計并實現(xiàn) Create Open、Read Write、Close、Delete 等文件命令的 算法,用戶可通過菜單方式或者API方式實現(xiàn)對自己文件的管理。三、實驗環(huán)境:Windows操作系統(tǒng)、VC+6. 0、C語言四、實驗

6、詳細實現(xiàn)過程與算法流程my_foimat:對文件存儲器進行格式化,即按照文件系統(tǒng)的結(jié)構(gòu)對虛擬磁盤空間進行布局, 并在其上創(chuàng)建根目錄以及用于管理文件存儲空間等的數(shù)據(jù)結(jié)構(gòu)。my_mkdir:用于創(chuàng)建子目錄。my_imdk:用于刪除子目錄。my_ls:用于顯示目錄中的內(nèi)容。my_cd:用于更改當前目錄。my_create:用于創(chuàng)建文件。my_open:用于打開文件。 my_close:用于關(guān)閉文件。my_write:用于寫文件。my_read:用于讀文件。my_im:用于刪除文件。my_exitsys:用于退出文件系統(tǒng)。1. 打開文件函數(shù)fopen()(1)格式:FILE *fbpen(const

7、char * filename,const char *mode)(2)功能:按照指定打開方式打開指定文件。(3)輸入?yún)?shù)說明:filename :待打開的文件名,如果不存在就創(chuàng)建該文件。mode:文件打開方式,常用的有:V:為讀而打開文本文件(不存在則出錯)?!眞”:為寫而打開文本文件(若不存在則創(chuàng)建該文件;反之,則從文件起始位置寫,原內(nèi)容將 被覆蓋)?!盿”:為在文件末尾添加數(shù)據(jù)而打開文本文件。(若不存在則創(chuàng)建該文件;反之,在原文件末尾 追加)。為讀和寫而打開文本文件。(讀時,從頭開始:在寫數(shù)據(jù)時,新數(shù)據(jù)只覆蓋所占的空間, 其后不變)?!?W+”:首先建立一個新文件,進行寫操作,隨后可以從

8、頭開始讀。(若文件存在,原內(nèi)容將 全部消失)。”a+“:功能與”聲相同;只是在文件末尾添加新的數(shù)據(jù)后,可以從頭開始讀。另外,上述模式字符串中都可以加一個b”字符,如rb、wb、ab、rb+、wb+、ab+等組合, 字符“b”表示fopen()函數(shù)打開的文件為二進制文件,而非純文字文件。(4)輸出:一個指向FILE類型的指針。2. 關(guān)閉文件函數(shù)fcloseQ(1)格式:mt fclose(FILE * stream);(2)功能:用來關(guān)閉先前fopen()打開的一個文件。此動作會讓緩沖區(qū)內(nèi)的數(shù)據(jù)寫入文件中, 并釋放系統(tǒng)所提供的文件資源。(3)輸入?yún)?shù)說明:stream:指向要關(guān)閉文件的指針,它是

9、先前執(zhí)行fopen()函數(shù)的返回值。(4)輸出:若關(guān)閉文件成功則返回0;有錯誤發(fā)生時則返回EOF并把錯誤代碼存到em】o。3. 讀文件函數(shù)fieadQ(1)格式:size_t fread( void *buffer, size_t size, size_t count, FILE * stream):(2)功能:讀二進制文件到內(nèi)存。(3)輸入?yún)?shù)說明:buffer:用于存放輸入數(shù)據(jù)的緩沖區(qū)的首地址;stream:使用fopen()打開的文件的指針,用于指示要讀取的文件; size:每個數(shù)據(jù)塊的字節(jié)數(shù):count:要讀入的數(shù)據(jù)塊的個數(shù);size*count:表示要求讀取的字節(jié)數(shù)。(4)輸出:實際

10、讀取的數(shù)據(jù)塊的個數(shù)。4. 寫文件函數(shù)fwiiteQ(1)格式:size_t fvite(const void *bufier,size_t size,size_t count,FILE *stream);(2)功能:將數(shù)據(jù)寫到二進制文件中。(3)輸入?yún)?shù)說明:buffer:用于存放輸出數(shù)據(jù)的緩沖區(qū)的首地址;stream:使用fopen()打開的文件的指針,用于指示要寫出的文件;size:每個數(shù)據(jù)塊的字節(jié)數(shù);count:要寫出的數(shù)據(jù)塊的個數(shù);size*count:表示要求寫出的字符數(shù)。(4)輸出:實際寫出的數(shù)據(jù)塊的個數(shù)。5.判斷文件結(jié)束函數(shù)feofO(1) 格式:mt feof(FILE * s

11、tream)(2) 功能:用來判斷是否已讀取到文件末尾。(3) 輸入?yún)?shù)說明:stream:使用fopen()打開的文件的指針,用于指示要判斷的文件。(4) 輸出:如果已讀到文件尾則返回非零值,其他情況返回0。6主要函數(shù)功能實現(xiàn):int forniatQ; /格式化磁盤mt mkdn(cliaf *sonfiiame); / 創(chuàng)建子目錄mt rmdir(char *sonfiiame); / 刪除子目錄iiit create(char *name); / 創(chuàng)建文件int listshowQ;/顯示子文件信息mt delfile(chai *name); 刪除文件mt changePath(ch

12、ai- *soiifname);/ 更改當前路徑iiit write(char *naine); / 寫入文件int exit。;/退出系統(tǒng)mt open(chai- *file);打開文件mt close(char *file);/ 關(guān)閉文件mt read(char *file);/讀取文件五、源程序:#include #include #include #include using namespace std;define GENERAL 1/1代表普通文件2代表目錄文件0表示空文件define DIRECTORY 2frdefine Zero 0 stmct FCBchai fhame1

13、6; /文件名chai- type; 0空文件1目錄文件2空文件 int size; 文件大小int fatheiBlockNum; 當前的父目錄盤塊號int currentB lockNum; 當前的盤塊void uiitializeQstrcpv(fiiame,OH);type = Zero;size =0; fatlierBlockNum = cunentBlockNum = 0;const char* FilePath = HC:niyfilesM;/*常量設(shè)置*7const mt BlockSize = 512;盤塊人小const mt OPEN_MAX = 5;能打開最多的文件數(shù)c

14、onst iiit BlockCount = 128;/盤塊數(shù)const iiit DiskSize = BlockSize * BlockCount; 磁盤人小const mt BlockFcbCount = BlockSize/sizeof(FCB)/目錄文件的最多 FCB 數(shù)mt OpeiiFileCount = 0; /統(tǒng)計當前打開文件數(shù)目stiuct OPENLIST 用戶文件打開表int files; 當前打開文件數(shù)FCB fOPEN_MAX; /TCB 拷貝OPENLISTQfiles=O;for(mt i=0:iOPEN_MAX;i+)fi .fatherB lockNum =

15、 -1 ; 為分配打開fi. type=GENERAL;stmct duFile/*目錄文件結(jié)構(gòu)*/stmct FCB fcbBlockFcbCount;void uiit(int _FatherBlockNum,iiit _CunentBlockNum,char *name)/父塊號,當前塊號,目 錄名strcpv(fcb0.fiiame4iame); /本身的 FCB fcb0.fatherBlockNum=_FatlieiBlockNuni; fcb0.cuiTentBlockNum=_CuiTentBlockNum; fcbO .type=DIRECTORY; 標記目錄文件 fbr(i

16、nt i= 1 ;iforniat();/打開文件列表初始化delete openlist;opeiilist=new OPENLIST;/*保存到磁盤上myfiles*/fp = fopen(FilePath/w+H);fwrite(BaseAddr,sizeof(char),DiskSize,fp);fclose(fp);pnntf(”格式化成功! ! n”);return 1;iiit nikdii(chai *sonfiiame)/*倉J建子 目 錄*/判斷是否有重名尋找空白子目錄項尋找空白盤塊號當前目錄卞增加該子目錄項分配子目 錄盤塊,并且初始化修改fat表int itempjFAT

17、;stmct dirFile *dn; 當前目錄的指針incurrent = 2) II 根目錄di尸&(osPoint-root);elsedir=(stmct dirFile *)(osPoiiit-data cunent-3);/*為了避免該目錄下同名文件夾*/fbr(i = 1 ;ifcbi.tvpe=DIRECTORY & sticnip(du-fcbi.fhame,sonfhame)=0) pnntf(”該文件夾下已經(jīng)有同名的文件夾存在了 !n”); return 0;for(i = l;i fcbi .type=Zero)break;if(i = BlockFcbCount)pn

18、mf(”該目錄已滿!請選擇新的目錄下創(chuàng)建!n”);return 0;temp = i;fbr(i = 3;i FAT 1 i = 0)break;if(i = BlockCount)磁盤己滿!n);return 0;1FAT=1;/*接下來進行分配*/osPoint-FAT 1 iFAT=osPomt-FAT2iFAT = 2;/2 表示分配給下級目錄文件填寫該分派新的盤塊的參數(shù)strcpv(dif-fcbtemp.fhame,sonfiiame);du-fcbtemp.type=DIRECTORY;du-fcbtemp.fatheiBlockNiim=cunent; du-fcbtemp.c

19、urrentBlockNum=iFAT;初始化子目錄文件盤塊dii-(stmct dirFile*)(osPomt-data 1FAT-3);定位到子目錄盤塊號du-iiut (current,iFAT.sonfhame)y/iFAT是要分配的塊號,這里的current用來指要分配的 塊的父塊號printf(倉9建子目錄成功! n);return 1;mt imdir(char *sonfiiame)/*刪除當前目錄下的文件夾*/int i,temp,j;/確保當前目錄F有該文件,并記錄下該FCB K標stmct dirFile *dn;當前目錄的指針if(current=2)di尸&(osP

20、oint-root);elsedir=(stmct dirFile *)(osPoiiit-data cunent-3);for(i=l ;ifcbi.tvpe=DIRECTORY & sticmp(dir-fcbi.fname,sonfhame)=0) break;temp=i:if(i=BlockFcbCount)prmtf(當前目錄卜-不存在該子目錄!n”);return 0;pnntf(”己經(jīng)達到目錄項容納上限,無法創(chuàng)建新目錄!5”); return 0;for(i = 3;iFAT 1 i=0)break;if(i=BlockCount) pnntf(磁盤己滿!n);return 0

21、;1FAT=1;/*進入分配階段*/分配磁盤塊osPoint-FATliFAT = osPomt-FAT2iFAT = 1;/*接卞來進行分配*/填寫該分派新的盤塊的參數(shù)strcpv(dir-fcbemptyNum fham 匕 ikhm);du-fcbemptyNum .type=GENERAL;du-fcbemptyNum. fatherB lockNum=cunent; du-fcbemptyNum.cunentBlockNum=iFAT;du-fcbemptyNum .size =0;chai* p = osPoint-dataiFAT -3;meniset(p,4,Blocksize

22、);pnntf(在當前目錄卜創(chuàng)建文本文件成功! 5”);return 1;/*查詢子目錄*/mt listshowQint i,DirCount=0,FileCount=0;搜索當前目錄stmct dirFile *dn;當前目錄的指針if(current=2)di尸&(osPoint-root);elsedir=(stmct dirFile *)(osPoiiit-data cunent-3);fbr(i= 1 ;ifcbi.tvpe=GENERAL)/查找普通文件FileCount+;priiitf(n%s 文本文件.nu,dir-fcbi.fhame); if(du-fcbi.type=

23、DIRECTORY) 查找目錄文件DirCouiit+;prmtf(H%s文件夾.irdu-fcbi.fhame);piintf(Mn該目錄卜共有%d個文本文件,d個文件夾XnXnFileCount.DirCouiit); return 1;/*在當前目錄下刪除文件*/mt delfile(chai- *name)int ijempj;確保當前目錄下有該文件,并且記錄卞它的FCB卞標stmct dirFile *dir;當前目錄的指針incurrent = 2)di尸&(osPoint-root);elsedir=(stmct dirFile *)(osPoiiit-data cunent-3

24、);for(i=l;i fcbi.tvpe=GENERAL & strcmp(du-fcbi.fiiainejiame尸=0) break;if(i = BlockFcbCount)pnntf(”當前目錄卜不存在該文件!n);return 0;int k;foi(k=0;kf kJ. type = GENERAL)&(sticmp(opeiilist-f k fiiame jiame)=0) if(openlist-flk .fatherBlockNum = current) break;elsepnntf(”該文件未在當前目錄下!n”);return 0;以k!=OPEN_MAX) clos

25、e(name);從打開列表中刪除/*開始刪除文件操作*/temp=i:j = dir-fcb temp.cuirentBlockNum ;查找盤塊號 josPoint-FAT 1 (j=osPomt-FAT2j=0; /fatl,fat2 表標記為空白 char *p=osPomt-dataj -習;meniset(p,O,Blocksize); 清除原文本文件的內(nèi)容 dii-fcbtemp .initializeQ; /type=O;標記該目錄項為空文件pmitf(在當前目錄卜刪除文件成功! n);return 1;/*進入當前目錄下的子目錄*/mt changePath(chai- *so

26、iifiiame)stmct dirFile *dk;當前目錄的指針if(current=2)di尸&(osPoint-root);elsedir=(stmct dirFile *)(osPoiiit-data cunent-3);/*回到父目錄*/if(strcmp(soiifiiame,n. ”)=0) if(cunent=2)pimtfC你現(xiàn)已經(jīng)在根目錄下!n);return 0;current = du-fcb0.fatherBlockNum;curientPath = curientPatli.substr(05cunentPath.size() strlen(dir-fcb0.fi

27、iame )-1); return 1;/*進入子目錄*/確保當前目錄下有該目錄,并且記錄下它的FCB卜標int i,temp;for(i = 1; i fcbi.tvpe=DIRECTORY&strcmp(du-fcbi .fiiame,sonfiiame)=0) temp=i;break;if(i=BlockFcbCount)prmtf(不存在該目錄!n“);return 0;修改當前文件信息current=dir-fcb temp .cunentBlockNum;currentPatli = cunentPath+dk-fcb temp.fiiame +”;pmitf(進入當前目錄卞的子

28、目錄成功! n”);return 1;mt exitQ/保存到磁盤上 C:niyfiles將所有文件都關(guān)閉/*System exit*/Q)=fbpen(FilePath;,w+H);fwrite(BaseAddr,sizeof(char),DiskSize,Q);fclose(fp);釋放內(nèi)存上的虛擬磁盤free(osPoint);釋放用戶打開文件表delete opeiilist;pnntf(”退出文件系統(tǒng)成功! iin”);return 1;iiit write(char *name)/*在指定的文件里記錄信息*/int i;char *staitPomt,*endPomt;在打開文件列

29、表中查找file(還需要考慮同名不同目錄文件的情況!) for(i=0;KOPEN.MAX;i+)if(strcmp(openlist-f i.fiiame4iame)=0 )if(openlist-fli .fatheiBlockNum =cunent) break;elsepmitfC該文件處于打開列表中,本系統(tǒng)只能改寫當前目錄下文件!n”); return 0;選=OPEN_MAX)pnntf(”該文件尚未打開,請先打開后寫入信息!n”);return 0;int active=i;int fileStartNum = openlist-factive.cuiTentBlockNum -

30、 3 ; staitPomt = osPomt-datafileStanNum;endPomt = osPoint-datafileStartNum + 1;pnntf(請輸入文本以CtrlD號結(jié)束:t”);char input;while(input=getcharQ) =4) if(staitPomt endPouit-1) *staitPoiiit+ = mput;elseprintf(達至lj單體文件最大容量! “);*startPoiiit-H- = 4;break;return 1;int read(char *file)/*選擇一個打開的文件讀取信息*/int i.fileSta

31、rtNum:char *staitPomt,*endPomt;/stiuct duFile *dir;在打開文件列表中查找file(還需要考慮同名不同目錄文件的情況!) for(i=0;if i.fiiame,file)=0) if(openlist-fli .fatheiBlockNum =cunent) break;elseprmtfC該文件處于打開列表中,本系統(tǒng)只能閱讀當前目錄下文件!n”); return 0;if(i=OPEN_MAX)pnmf(”該文件尚未打開,請先打開后讀取信息!n”);return 0;int active=i;/計算文件物理地址fileStartNum = o

32、peiilist-factive.cunentBlockNum - 3 ; staitPomt = osPomt-datafileStailNum;endPomt = osPoint-datafileStartNum + 1;printfC該文件的內(nèi)容為:”);while(*staitPomt)! =4& (stanPomt endPomt)putchar(*stanPomt-H-);pimtffE);return 1;int open(chai- * file)/打開文件/*當前目錄下添加一,個打開文件*/int LFcblndex;確保沒有打開過該文件=相同名字+相同目錄fbr(i=0;i

33、fi.type GENERAL & strcmp(openlist-f i.fiiame,file)=0 &o penlist-fli .fatherBlockNum = current)pimtfC該文件已經(jīng)被打開!n);retuni 0;確保有空的打開文件項if(opeiilist-files = OPEN_MAX)pnmf(”打開文件數(shù)目達到上限!無法再打開新文件.5”); retuni 0;確保當前目錄下有該文件,并且記錄卞它的FCB卞標stmct dirFile *dn;當前目錄的指針if(current=2)di尸&(osPoint-root);elsedir=(stmct dir

34、File *)(osPoiiit-data cunent-3);for(i = l;ifcbi.tvpe=GENERAL & strcmp(dii-fcbi.fiiaine,file尸=0 ) Fcbliidex=i;break;if(i=BlockFcbCount)pnntf(”當前目錄卜不存在該文件!n);return 0;裝載新文件進入打開文件列表,(FCE信息,文件數(shù)卄)? ?難道名字過不來? opeiilist-fOpeiiFileCount = dir-fcbFcbIiidex; /FCB 拷貝 opeiilist-files +;printfC文件打開成功! n”);OpeiiF

35、ileCount+;return 1;mt close(chai *file)釋放該文件所占內(nèi)存/釋放用戶打開文件列表表項inti;在打開文件列表中查找file(還需要考慮同名不同目錄文件的情況!) for(i=0;if i.tvpe = GENERAL)&(sticmp(opeiilist-f i. fiiame, file)=0) if(openlist-fli .fatherBlockNum = current)break;elseprmtfC該文件已打開,但未在當前目錄下,無法關(guān)閉!n”); return 0;if(i=OPEN_MAX)pnmf(”該文件未在打開列表中!n”);ret

36、imi 0;int active=i;opeiilist-files 一;opeiilist-factive.initialize();OpeiiFileCount-;printf(”該文件己關(guān)閉!n”);return 1;mt mam()printf(M Welcome To My Operate System Of File(FAT)n);pmitf(”n以下是使用說明書:n);使用說明書 pm】tf(0);pmitf(” format :對磁盤格式化. n”);pnntf(, exit :安全退出該文件系統(tǒng),保存信息.);printf(M nikdk diiname :創(chuàng)建子目錄. n”

37、);pnntf(M nndir dimarne :刪除子目錄. n”);Is diiname :顯示當前目錄下信息. n);printf(M cd diiname :更改當前目錄. n”);pnntf(, create filename :創(chuàng)建一個新文件,并且打開. n);pnntf(, write filename :選擇一個打開的文件寫入信息 n);piintfC1 readfilename :選擇一,個打開的文件讀取信息.5);pnntf(M rmfilename :刪除文件. nn);printf(M openfilename :打開文件.5);printf(M close filen

38、ame :關(guān)閉文件.nM);pm】tf( nn”);opeiilist=new OPENLIST; /創(chuàng)建用戶文件打開表BaseAdd尸(char *)malloc(DiskSize);/申請虎擬空間并且初始化 osPoint=(stmct DISK *)(BaseAddi);/虛擬磁盤初始化 if(fp=fopeii(FilePath;r)!=NULL)/ 加載磁盤文件 fiead(BaseAddisizeof(chai).DiskSize.fp);prmtf(H加載磁盤文件(%s)成功,現(xiàn)在可以進行操作T IWFilePath);pnntfT這是你第一次使用該文件管理系統(tǒng)!t正在初始化W)

39、; format();pnmf(初始化已經(jīng)完成,現(xiàn)在可以進行操作了!nn”);while(l)coutcunentPath;cincmd;if(cmd=nforniatH)forma tQ;else if(cmd=HnikduH)cmconunand; nikdu(conmiand);else if(cmd=Hrmdu H) ciiiconmiand;rmdu(conmiaiid);else if(cmd=Hlsn) listshowQ;else if(cmd=HcdH) cuiconmiand; changePath(conmiand);else if(cmd=HcreateH) cuiconmiand; create(conmiand);else if(cmd=HwnteM) cuiconmian

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論