![網(wǎng)絡(luò)工程專業(yè)—數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告(偽碼)_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/20/428ead0d-864a-48aa-8dc5-98bd0abae864/428ead0d-864a-48aa-8dc5-98bd0abae8641.gif)
![網(wǎng)絡(luò)工程專業(yè)—數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告(偽碼)_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/20/428ead0d-864a-48aa-8dc5-98bd0abae864/428ead0d-864a-48aa-8dc5-98bd0abae8642.gif)
![網(wǎng)絡(luò)工程專業(yè)—數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告(偽碼)_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/20/428ead0d-864a-48aa-8dc5-98bd0abae864/428ead0d-864a-48aa-8dc5-98bd0abae8643.gif)
![網(wǎng)絡(luò)工程專業(yè)—數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告(偽碼)_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/20/428ead0d-864a-48aa-8dc5-98bd0abae864/428ead0d-864a-48aa-8dc5-98bd0abae8644.gif)
![網(wǎng)絡(luò)工程專業(yè)—數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告(偽碼)_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/20/428ead0d-864a-48aa-8dc5-98bd0abae864/428ead0d-864a-48aa-8dc5-98bd0abae8645.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告 題目:串基本操作的演示 學(xué) 院 計(jì)算機(jī)學(xué)院 專 業(yè) 網(wǎng)絡(luò)工程 年級(jí)班別 學(xué) 號(hào) 學(xué)生姓名 指導(dǎo)教師 成 績 _2012年6月題目:串基本操作的演示一 需求分析1. 定義自定義的串類型,并使用此類型實(shí)現(xiàn)串的基本操作演示。2. 利用堆分配存儲(chǔ)表示實(shí)現(xiàn)hstring串類型的最小操作子集的基礎(chǔ),實(shí)現(xiàn)串抽象數(shù)據(jù)類型的其余基本操作。3. 嚴(yán)格檢查參數(shù)的合法性4. 構(gòu)造命令解釋程序,循環(huán)往復(fù)處理用戶輸入的每一條命令,有程序終止命令5. 需要實(shí)現(xiàn)的基本操作:(1)賦值 (2)判相等 (3)聯(lián)接 (4)求長度 (5)求子串(6)子串定位 (7)串替換 (8)顯示 (9)刪除 (10)退出
2、測試數(shù)據(jù):必要數(shù)據(jù)(1)e “ ”,應(yīng)顯示”equal”. (2)e abcabcd,應(yīng)顯示unequal. (3)c “ “,應(yīng)顯示”. (4) i a”,應(yīng)報(bào)告:參數(shù)非法. (5)r aaaaab,應(yīng)顯示ba. (6)r aaabc aaab,應(yīng)顯示aabaabaabbc. (7)r aaaaaaaaaaaaab,應(yīng)顯示abab. 自定義數(shù)據(jù): (8)astring,應(yīng)顯示:“語法格式錯(cuò)誤!請(qǐng)重新輸入!” (9)a string,應(yīng)顯示:內(nèi)部名string. (10)a ,應(yīng)顯示:內(nèi)部名 . (10)lstring,應(yīng)顯示:”命令語法格式錯(cuò)誤!請(qǐng)重新輸入!” (11)l string,應(yīng)顯
3、示: 6. (12)l ,應(yīng)顯示: 0. (13)d123,應(yīng)顯示:“命令語法錯(cuò)誤!內(nèi)部名不能小于0和大于100和只能為數(shù)字!” (14)ds,應(yīng)顯示:“內(nèi)部名只能輸入數(shù)字!請(qǐng)重新輸入!” (15)d99,應(yīng)顯示:“此內(nèi)部名為空!請(qǐng)重新輸入!” (16)d2,應(yīng)顯示:“命令語法格式錯(cuò)誤!請(qǐng)重新輸入!” (17)d 2,應(yīng)顯示:刪除成功. (18)sstring,應(yīng)顯示:“命令語法格式錯(cuò)誤!請(qǐng)重新輸入!” (19)s string2 3,應(yīng)顯示:tr. (20)s string5 7應(yīng)顯示:start不能小于0或大于字符串的長度。end不能小于start且不能大于字符串的長度。 (21)cstr
4、ing,應(yīng)顯示:“命令語法格式錯(cuò)誤!請(qǐng)重新輸入!” (22)c string,應(yīng)顯示:string. (23)c str應(yīng)顯示:str。 (24)istring,應(yīng)顯示:“命令語法格式錯(cuò)誤!請(qǐng)重新輸入!” (25)i stringing,應(yīng)顯示: 4.二 概要設(shè)計(jì)1. 定義hstring串抽象數(shù)據(jù)類型adt strheadlist 數(shù)據(jù)對(duì)象: d ai | aielemset, i=1,2,.,n, n0 數(shù)據(jù)關(guān)系:r1 |ai-1, aid, i=2,.,n 基本操作:void getcommand(char c,strheadlist &headlist,resulttype &resul
5、type)初始條件:c不為空,headlist存在,resultype存在操作結(jié)果: 得到命令的對(duì)應(yīng)整數(shù)值。void assignment(strheadlist headlist,resulttype resultype,int &pointcheck)初始條件:headlist存在,resultype存在。操作結(jié)果:存儲(chǔ)輸入的字符串,并顯示其內(nèi)部名和串值。void equal(strheadlist headlist,resulttype resultype,int &pointcheck) 初始條件 : headlist存在,resultype存在。 操作結(jié)果:報(bào)告輸入的兩字符串是否相等
6、。void connect(strheadlist headlist,resulttype resultype,int &pointcheck) 初始條件 : headlist存在,resultype存在。 操作結(jié)果 :聯(lián)接輸入的兩字符串,并顯示聯(lián)接后的字符串。void length(strheadlist headlist,resulttype resultype,int &pointcheck) 初始條件 : headlist存在,resultype存在。 操作結(jié)果:顯示輸入的字符串的長度。void substring(strheadlist headlist,resulttype res
7、ultype,int start,int end) 初始條件 : headlist存在,resultype存在。 操作結(jié)果:顯示主串中長度為end-start的子串。void sbslocation(strheadlist headlist,resulttype resultype,int &pointcheck) 初始條件 : headlist存在,resultype存在。 操作結(jié)果:顯示子串在主串第一次出現(xiàn)的位置。void replace(strheadlist headlist,resulttype resultype,int &pointcheck) 初始條件 : headlist存在
8、,resultype存在。 操作結(jié)果:用第二子串替換主串中出現(xiàn)的第一子串,并顯示替換后的主串 void show(strheadlist headlist,resulttype resultype,int &pointcheck,int k) 初始條件 : headlist存在,resultype存在。 操作結(jié)果:顯示表內(nèi)所有的字符串的內(nèi)部名和串值。void delete(strheadlist headlist,resulttype resultype,int &pointcheck) 初始條件 : headlist存在,resultype存在。 操作結(jié)果:刪除指定內(nèi)部名的字符串。void
9、end(strheadlist headlist,resulttype resultype,int &pointcheck,int k) 初始條件 : headlist存在,resultype存在 操作結(jié)果:結(jié)束程序。2. 命令分析抽象數(shù)據(jù)類型adt resulttype數(shù)據(jù)對(duì)象: d ai | aielemset, i=1,2,.,n, n0 數(shù)據(jù)關(guān)系:r1 |ai-1, aid, i=2,.,n 變量:int cmdno 操作結(jié)果:存儲(chǔ)命令對(duì)應(yīng)的整數(shù)值。 int s3操作結(jié)果:存儲(chǔ)輸入的子串的內(nèi)部名。 3基本類型抽象數(shù)據(jù)類型adt hstring 數(shù)據(jù)對(duì)象: d ai | aielemse
10、t, i=1,2,.,n, n0 數(shù)據(jù)關(guān)系:r1 |ai-1, aid, i=2,.,n 變量:char *ch操作結(jié)果:字符串基址。 int length 操作結(jié)果 :存儲(chǔ)字符串的長度.4.主程序void main() 初始化; 命令格式和使用格式說明列表; 命令分析函數(shù)調(diào)用 ab(headlist,resultype); 5.本程序模塊的調(diào)用關(guān)系本程序只有兩個(gè)模塊 主程序模塊 包涵各函數(shù)的模塊三 詳細(xì)設(shè)計(jì)1. 主程序需要的全程量#define size 30 /字符串的分配空間#define true 1 /常量typedef struct /串表頭定義hstring strhead100
11、; /字符串指針數(shù)組strheadlist; /串表頭類型2.字符串類型typedef struct /字符串類型定義char *ch; /字符串存儲(chǔ)基址int length; /字符串的長度hstring; typedef struct/命令存儲(chǔ)類型定義int cmdno; /存儲(chǔ)命令的變量int s3; /存儲(chǔ)輸入的字符串的下標(biāo)的數(shù)組resulttype;void getcommand(char c,strheadlist &headlist,resulttype &resultype)/判斷由c存儲(chǔ)的字符,把與之對(duì)應(yīng)的命令的值賦予resultype的cmdno中void assignme
12、nt(strheadlist headlist,resulttype resultype,int &pointcheck)/從headlist中strhead100查找還沒開辟空間的串頭指針,然后開辟空間存儲(chǔ)/用戶輸入的字符串。void equal(strheadlist headlist,resulttype resultype,int &pointcheck)/在headlist中存儲(chǔ)用戶輸入的兩個(gè)字符串,再進(jìn)行比較,如果相等顯示equal,/如果不相等顯示unequal。void connect(strheadlist headlist,resulttype resultype,int
13、&pointcheck)/存儲(chǔ)用戶輸入的兩個(gè)字符串,然后將第二個(gè)字符串聯(lián)接到第一個(gè)字符后面并存儲(chǔ)/在headlist中,顯示聯(lián)接后的字符串的串值。void length(strheadlist headlist,resulttype resultype,int &pointcheck)/在headlist中存儲(chǔ)用戶輸入的一個(gè)字符串,然后顯示字符串的長度。void substring(strheadlist headlist,resulttype resultype,int start,int end)/在headlist中存儲(chǔ)用戶輸入的一個(gè)字符串,并用start、end接受用戶需要獲得的/子串
14、的開始位置和結(jié)束位置。void sbslocation(strheadlist headlist,resulttype resultype,int &pointcheck)/在headlist中存儲(chǔ)用戶輸入的兩個(gè)字符串,顯示第二個(gè)字符串在第一個(gè)字符串的/第一次出現(xiàn)的位置。void replace(strheadlist headlist,resulttype resultype,int &pointcheck)/存儲(chǔ)用戶輸入的三個(gè)字符串,在第一個(gè)字符串中查找與第二個(gè)字符串相等的子串/并用第三個(gè)字符串替換之,顯示替換后的字符串。void show(strheadlist headlist,res
15、ulttype resultype,int &pointcheck,int k)/resultype接受命令cmdno,顯示headlist所有存儲(chǔ)的字符串。void delete(strheadlist headlist,resulttype resultype,int &pointcheck)/在headlist存儲(chǔ)用戶輸入的內(nèi)部名,將字符串內(nèi)部名轉(zhuǎn)換為整數(shù)類型,/刪除對(duì)應(yīng)內(nèi)部名的字符串,若此內(nèi)部名字符串不存在,則顯示不存在,否則/顯示刪除成功。void end(strheadlist headlist,resulttype resultype,int &pointcheck,int k)
16、/分析命令,結(jié)束程序的運(yùn)行。void ab(strheadlist &headlist,resulttype &resultype)/分析用戶輸入的命令,存儲(chǔ)用戶輸入的字符串,并調(diào)用相應(yīng)的命令函數(shù)。其中操作的算法如下:1.void ab(strheadlist &headlist,resulttype &resultype)/主函數(shù)定義for(;c!=n;) c=getchar();/從屏幕讀取一個(gè)字符if(check=0) getcommand(c,headlist,resultype);/調(diào)用命令匹配函數(shù)check=1;/check賦值為1,限制只調(diào)用一次命令匹配函數(shù) if(c=&star
17、t=1)/如果字符串輸入結(jié)束 start=0;headlist.strheadi.length=length; /獲得字符串長度headlist.strheadi.chlength=0;/字符串結(jié)束符length=0; /變量length置為0 resultype.sj=i;/記錄輸入的字符串的內(nèi)部名j+; pointcheck+=1; /用于命令語法判斷continue; /結(jié)束循環(huán) if(c=)&start=0)/如果字符串讀取開始 pointcheck+=1;start=1; while(headlist.strheadi.ch)/尋找還沒分配的串指針的下標(biāo) i+; if(start=1
18、) if(!headlist.strheadi.ch)/如果未分配存儲(chǔ)空間headlist.strheadi.ch=(char *)malloc(size*sizeof(char);if(c!=)/如果讀取的字符串不為headlist.strheadi.chlength=c;/存儲(chǔ)字符headlist.strheadi.length+; /字符長度自增length+;k+;/用于命令語法判斷switch(resultype.cmdno)/選擇對(duì)應(yīng)命令的對(duì)應(yīng)函數(shù) case 1:assignment(headlist,resultype,pointcheck);break; case 2:equa
19、l(headlist,resultype,pointcheck);break; case 3:connect(headlist,resultype,pointcheck);break; case 4:length(headlist,resultype,pointcheck); case 5:substring(headlist,resultype,pointcheck);break; case 6:sbslocation(headlist,resultype,pointcheck);break; case 7:replace(headlist,resultype,pointcheck);bre
20、ak; case 8:show(headlist,resultype,pointcheck,k); case 9:delete(headlist,resultype,pointcheck);break; case 10:end(headlist,resultype,pointcheck,k);break; case 11:printf(t不存在此命令,請(qǐng)重新輸入!n);ab(headlist,resultype);break; default: break; 2.void getcommand(char c,strheadlist &headlist,resulttype &resultype
21、) /得到對(duì)應(yīng)輸入的命令switch(c) case a: resultype.cmdno=1;break;case e: resultype.cmdno=2;break; case c: resultype.cmdno=3;break; case l: resultype.cmdno=4;break; case s: resultype.cmdno=5;break; case i: resultype.cmdno=6;break; case r: resultype.cmdno=7;break; case p: resultype.cmdno=8;break; case d: resulty
22、pe.cmdno=9;break; case q: resultype.cmdno=10;break; default:resultype.cmdno=11;break;3.void assignment(strheadlist headlist,resulttype &resultype,int &pointcheck) /賦值函數(shù)調(diào)用if(pointcheck=2)/ 語法判斷 printf(nt命令輸出的結(jié)果為:);printf(nt新賦值的字符串的內(nèi)部名為:%d,串值為:,resultype.s0);puts(headlist.strheadresultype.s0.ch);print
23、f(n); ab(headlist,resultype);/程序循環(huán)執(zhí)行else printf(nt命令語法錯(cuò)誤!請(qǐng)重新輸入!n); ab(headlist,resultype);/程序循環(huán)執(zhí)行 4.void equal(strheadlist headlist,resulttype resultype,int &pointcheck) /判相等函數(shù)調(diào)用 if(pointcheck=4)/語法判斷 printf(t命令輸出結(jié)果為:);if(headlist.strheadresultype.s0.length!=headlist.strheadresultype.s1.length)/如果兩字
24、符串長度不相等 printf(unequaln); ab(headlist,resultype); else for(i=0;iheadlist.strhead1.length;i+)/各字符判斷 if(headlist.strheadresultype.s0.chi!=headlist.strheadresultype.s1.chi)/如果有一個(gè)字符不相等 printf(unequal); printf(n); ab(headlist,resultype); printf(equal); printf(n); ab(headlist,resultype);/程序循環(huán)執(zhí)行 else print
25、f(nt命令語法錯(cuò)誤!請(qǐng)重新輸入!n); ab(headlist,resultype);/程序循環(huán)執(zhí)行 5.void connect(strheadlist headlist,resulttype resultype,int &pointcheck) /字符串聯(lián)接 if(pointcheck=4)/語法判斷printf(t命令輸出結(jié)果為:); while(headlist.strheadi.ch)/尋找還沒分配的串指針的下標(biāo) i+;headlist.strheadi.ch=(char*)malloc(headlist.strheadresultype.s0.length+headlist.st
26、rheadresultype.s1.length)*sizeof(char);/分配長度為兩個(gè)字 符串總長度的空間for(;j(headlist.strheadresultype.s0.length);j+)/存儲(chǔ)第一個(gè)字符串headlist.strheadi.chj=headlist.strheadresultype.s0.chj; for(;k0&start=headlist.strheadresultype.s0.length&end=start)/如果輸入數(shù)據(jù)不正確 break;/退出循環(huán) else /如果語法不正確 printf(tstart不能小于0或大于字符串的長度n); pri
27、ntf(tend不能小于start且不能大于字符串的長度n); printf(t請(qǐng)重新輸入子串長度n); start=0; end=0; else printf(nt命令語法錯(cuò)誤!請(qǐng)重新輸入!n); ab(headlist,resultype); if(start=-1) printf(t命令輸出結(jié)果為:);for( i=start;i=end;i+)/顯示從start到end長度的子字符串printf(%c,headlist.strheadresultype.s0.chi);printf(n);ab(headlist,resultype);/程序循環(huán)elseab(headlist,resul
28、type);/程序循環(huán)7.void sbslocation(strheadlist headlist,resulttype resultype,int &pointcheck) /子串在主串的第一次出現(xiàn)的位置if(pointcheck=4&headlist.strheadresultype.s1.length!=0)/語法判斷 printf(t命令輸出結(jié)果為:);for(;i=(headlist.strheadresultype.s0.length-headlist.strheadresultype.s1.length);i+)/尋找子串 if(headlist.strheadresultyp
29、e.s0.chi=headlist.strheadresultype.s1.ch0)/如果主串某個(gè)字符與子串第一個(gè)字符相等 for(j=0;j(headlist.strheadresultype.s0.length-headlist.strheadresultype.s1.length)/如果不存在子串 printf(nt第一字符串不存在第二字符串); printf(n); ab(headlist,resultype);/程序循環(huán)else printf(nt命令語法錯(cuò)誤!請(qǐng)重新輸入!n); ab(headlist,resultype);/程序循環(huán) 8.void replace(strheadl
30、ist headlist,resulttype resultype,int &pointcheck)/子串替換函數(shù)while(headlist.strheadcurrent.ch)/尋找還沒分配的串指針的下標(biāo) current+;headlist.strheadcurrent.ch=(char *)malloc(size*sizeof(char); if(pointcheck=6)/語法判斷 printf(t命令輸出結(jié)果為:); headlist.strheadcurrent.length=0;/替換后的子串存儲(chǔ)在headlist.strhead0.ch中for(i=0;i=headlist.s
31、trheadresultype.s0.length-headlist.strheadresultype.s1.length;i+,n+)/尋找相同子串并替換 if(headlist.strheadresultype.s0.chi=headlist.strheadresultype.s1.ch0)/尋找主串相同的子串 for(j=i,k=0;ji+headlist.strheadresultype.s1.length;j+,k+) if(headlist.strheadresultype.s0.chj=headlist.strheadresultype.s1.chk) m+; else head
32、list.strheadcurrent.chn=headlist.strheadresultype.s0.chi;/不然將不相等字符存在headlist.strhead0.ch中 if(m=headlist.strheadresultype.s1.length)/如果找到相同的子串 if(headlist.strheadresultype.s2.length!=0) /如果替換串不是空串for(j=i,k=0;ji+headlist.strheadresultype.s2.length;j+,k+)/將 替換串存儲(chǔ)在headlist.strhead0.ch headlist.strheadcu
33、rrent.chn=headlist.strheadresultype.s2.chk; n+;/替換后子串的長度自增 i=i+headlist.strheadresultype.s1.length-1; n=n-1; m=0; for(;iheadlist.strheadresultype.s0.length;i+) headlist.strheadcurrent.chn=headlist.strheadresultype.s0.chi; n+; headlist.strheadcurrent.length=n-1;/得到替換后字符串的長度 headlist.strheadcurrent.ch
34、n=0;/字符串結(jié)束符 puts(headlist.strheadcurrent.ch); printf(n); ab(headlist,resultype);/程序循環(huán) else printf(nt命令語法錯(cuò)誤!請(qǐng)重新輸入!n); ab(headlist,resultype);/程序循環(huán) 9.void show(strheadlist headlist,resulttype resultype,int &pointcheck,int k) /顯示字符串函數(shù)if(pointcheck=0&k=2)/語法判斷printf(t命令輸出結(jié)果為:);while(headlist.strheadi.ch
35、)/輸出不是空串的字符串 printf(nt內(nèi)部名:%dt串值:,i);puts(headlist.strheadi.ch);i+;printf(n); ab(headlist,resultype);/程序循環(huán) else printf(nt命令語法錯(cuò)誤!請(qǐng)重新輸入!n); ab(headlist,resultype);/程序循環(huán)10.void delete(strheadlist headlist,resulttype resultype,int &pointcheck) /刪除指定內(nèi)部名的字符串 if(headlist.strheadresultype.s0.length0)/如果輸入的內(nèi)部
36、名大于100或小于0 if(headlist.strheadresultype.s0.length=1)/如果輸入內(nèi)部名只是一位數(shù) if(headlist.strheadresultype.s0.ch057)/內(nèi)部名只能輸入數(shù)字 printf(nt內(nèi)部名只能輸入數(shù)字!請(qǐng)重新輸入!n); ab(headlist,resultype); shu=headlist.strheadresultype.s0.ch0-48; else if(headlist.strheadresultype.s0.ch057)|(headlist.strheadresultype.s0.ch157)/內(nèi)部名只能輸入數(shù)字
37、printf(nt內(nèi)部名只能輸入數(shù)字!請(qǐng)重新輸入!); ab(headlist,resultype); shu=(headlist.strheadresultype.s0.ch0-48)*10+(headlist.strheadresultype.s0.ch1-48);/計(jì)算兩位的數(shù)字 if(pointcheck=2)/語法判斷 printf(t命令輸出結(jié)果為:);char *p;if(headlist.strheadshu.ch=null)/如果指定的字符串為空 printf(nt此內(nèi)部名為空!請(qǐng)重新輸入!n); ab(headlist,resultype);/程序循環(huán) elsep=head
38、list.strheadshu.ch; free(p); /釋放指定的空間待添加的隱藏文字內(nèi)容2headlist.strheadshu.ch=null;if(!headlist.strheadshu.ch) printf(nt刪除成功!n); ab(headlist,resultype); /程序循環(huán)else printf(nt命令語法錯(cuò)誤!請(qǐng)重新輸入!n); ab(headlist,resultype);/程序循環(huán) else printf(nt命令語法錯(cuò)誤!內(nèi)部名不能小于0和大于100和只能為數(shù)字!n); ab(headlist,resultype); /程序循環(huán)11.void end(st
39、rheadlist headlist,resulttype resultype,int &pointcheck,int k) /退出函數(shù) if(pointcheck=0&k=2)/語法判斷if(resultype.cmdno=10)while(true) /結(jié)束程序return;else printf(nt命令語法錯(cuò)誤!請(qǐng)重新輸入!n); ab(headlist,resultype);/程序循環(huán)3.主函數(shù) void main()strheadlist headlist;/創(chuàng)建串表頭 resulttype resultype;/創(chuàng)建命令存儲(chǔ)類型for( j=0;j100;j+)/將各串的的頭指針
40、置換為空指針headlist.strheadj.ch=null;for( i=0;i3;i+)resultype.si=0; /第一個(gè)串頭指針開辟大小為size的字符存儲(chǔ)空間 printf(t學(xué)院:計(jì)算機(jī)學(xué)院 專業(yè):網(wǎng)絡(luò)工程 學(xué)號(hào):3111006293 姓名:湯瑞華 班級(jí):1班n);printf(tttt命令列表n);/顯示命令列表printf(t1.賦值命令 a 例: a stringn);printf(t2.判相等命令 e 例: e string stringn); printf(t3.聯(lián)接命令 c 例: c string stringn); printf(t4.求長度命令 l 例: l
41、stringn); printf(t5.求子串命令 s 例: s stringn);printf(t6.子串定位命令 i 例: i string ing n);printf(t7.串替換命令 r 例: r string ing abcn);printf(t8.顯示命令 p 例: p n); printf(t9.刪除命令 d 例: d 3n);printf(t10.退出命令 q 例: q n);printf(ttt請(qǐng)輸入指令和字符串n); ab(headlist,resultype);/命令分析函數(shù)調(diào)用4.函數(shù)的調(diào)用關(guān)系圖 main ab getcommandassignment equal connect length substring sbslocation replace show delete end 四 調(diào)試分析1. 在編程中,對(duì)設(shè)計(jì)做了如下修改:(1) 由于涉及到程序的循環(huán)運(yùn)行的問題,原來設(shè)計(jì)是用while語句實(shí)現(xiàn)循環(huán)讀取用戶輸入的命令,但發(fā)現(xiàn)無法實(shí)現(xiàn)。所以把讀取用戶輸入命令的語句塊和相應(yīng)的函數(shù)調(diào)用語句塊整合成函數(shù)ab();并在每一個(gè)函數(shù)的最后添加了函數(shù)ab()以實(shí)現(xiàn)循環(huán)。(2) 在調(diào)試的過程中,由于沒有命令語法的嚴(yán)格檢查,在輸入一些錯(cuò)誤命令的時(shí)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代學(xué)生餐廳的照明與色彩搭配藝術(shù)
- 深度解讀網(wǎng)絡(luò)輿情的來源與影響研究報(bào)告解讀分享
- 現(xiàn)代金融行業(yè)中的移動(dòng)支付技術(shù)與教育普及
- 快手國慶節(jié)的活動(dòng)方案
- 國慶假期活動(dòng)方案
- 國慶節(jié)酒店漲價(jià)活動(dòng)方案
- 2、3、4的乘法口訣(說課稿)-2024-2025學(xué)年二年級(jí)上冊(cè)數(shù)學(xué)人教版
- Unit1 There is a horse in this photo(說課稿)-2024-2025學(xué)年外研版(三起)四年級(jí)上冊(cè)001
- 17《他們那時(shí)候多有趣啊》(說課稿)-2023-2024學(xué)年統(tǒng)編版語文六年級(jí)下冊(cè)
- 13 我能行(說課稿)-統(tǒng)編版(五四制)道德與法治二年級(jí)下冊(cè)
- 水利水電工程監(jiān)理平行檢測表部分
- 分部分項(xiàng)工程質(zhì)量檢驗(yàn)計(jì)劃表
- 社區(qū)衛(wèi)生服務(wù)中心醫(yī)療服務(wù)推薦病-2023版1-4-10
- HY/T 266-2018外壓中空纖維超濾膜表面親水性的測試接觸角法
- GB/T 4857.3-2008包裝運(yùn)輸包裝件基本試驗(yàn)第3部分:靜載荷堆碼試驗(yàn)方法
- 【英文原版小說】the things they carried《負(fù)荷》
- 領(lǐng)導(dǎo)干部如何管理壓力與情緒課件
- 2022-2023年度神農(nóng)中華農(nóng)業(yè)科技獎(jiǎng)科研和科普類推薦書和摘要表(樣本)
- 《鄉(xiāng)土中國-差序格局》學(xué)案-統(tǒng)編版高中語文必修上冊(cè)
- 大學(xué)成績單中文(word版)
- 海南省儋州市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名明細(xì)及行政區(qū)劃代碼居民村民委員會(huì)
評(píng)論
0/150
提交評(píng)論