




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、驗證性實驗5:串子系統(tǒng)班級學(xué)號 012301114114 姓名 胡德文1 .實驗?zāi)康?1)掌握串的特點及順序定長存儲的方式。(2)掌握串的創(chuàng)建、連接、插入、刪除、顯示等操作。(3)掌握串的查找、取子字符串、比較串大小的操作(4)掌握模式匹配的基本思想及其算法。2 .實驗內(nèi)容(1)由用戶通過鍵盤輸入建立一個字符串。(2)編寫插入、刪除、查找、比較、取子字符串、連接字符串、顯示、模式匹配等程 序。(3)設(shè)計一個選擇式菜單,以菜單方式選擇上述操作。串子系統(tǒng)*1-輸入字串*2-_-連接字串*3-取出子串*4-刪除子串*5-插入子串*6-查找子串*7-比較串大小*8-顯示字串*0-返回*請輸入菜單選項(
2、0-8):3 .實驗程序#include <stdio.h>#define STRINGMAX 100typedef struct char vec STRINGMAX;int len;str;void ConcatStr(str *r1,str *r2) int i;printf("nttr1=%s r2=%sn",r1->vec,r2->vec);if 6->len+r2->len>STRINGMAX)printf("nnt 兩個串太長,溢出!n");else for (i=0;i<r2->len
3、;i+)r1->vecr1->len+i=r2->veci;r1->vecr1->len+i='0'r1->len=r1->len+r2->len;) ) void SubStr(str *r,int i,int j) int k;str a;str *r1=&a;if (i+j-1>r->len) printf ("ntt 子串超界!n"); return;) elsefor (k=0;k<j;k+)r1->veck=r->veci+k-1;r1->len=j;r1
4、->vecr1->len=''0')printf("ntt取出字符為:");puts(r1->vec);)void DelStr(str *r,int i,int j)int k;if(i+j-1>r->len)printf("ntt所要刪除的子串超界!n");else for (k=i+j;k<r->len;k+,i+) r->veci=r->veck; r->len=r->len-j;r->vecr->len=''0') )
5、str *InsStr(str *r,str *r1,int i) int k;if(i>=r->len|r->len+r1->len>STRINGMAX) printf("ntt不能才f入!n");else for(k=r->len-1;k>=i;k-) r->vecr1->len+k=r->veck; for(k=0;k<r1->len;k+) r->veci+k=r1->veck;r->len=r->len+r1->len;r->vecr->len=
6、9;'0') return r;)int IndexStr(str *r,str *r1)int i,j,k;for(i=0;r->veci;i+)for(j=i,k=0;r->vecj=r1->veck;j+,k+)if(!r1->veck+1)return i;return -1;int LenStr(str *r)int i=0;while(r->veci!='0')i+;return i;str*CreateStr(str *r) gets(r->vec);r->len=LenStr(r);return r;in
7、t EqualStr(str *r1,str *r2)for(int i=0;r1->veci&&r2->veci&&r1->veci=r2->veci;i+);return r1->veci-r2->veci;void main()str a,b,c,d;str *r=&a,*r1;r->vec0='0'char choice,p;int i,j,ch=1;while(ch!=0)printf("n");printf("ntt串子系統(tǒng)");printf(&
8、quot;ntt*");printf("ntt*1 輸入字串*")printf("ntt*2 連接字串*")printf("ntt*3 取出子串*")printf("ntt*4 刪除子串*")printf("ntt*5 插入子串*")printf("ntt* 6 查 找 子 串*")printf("ntt* 7 比較 串大小*")printf("ntt* 8 顯 示 字 串*")printf("ntt* 0 返回*&
9、quot;)nr*;r-t4-F/H*”、printf("ntt 請選擇菜單號(0-8): ");scanf("%c",&choice);getchar();if(choice='1')printf("ntt 請輸入一個字符串:");gets(r->vec);r->len=LenStr(r);else if(choice='2')printf("ntt 請輸入所要連接的串:");r1=CreateStr(&b);ConcatStr(r,r1);printf
10、("ntt 連接以后的新串值為:");puts(r->vec);else if(choice='3')printf("ntt 請輸入從第幾個字符開始:");scanf("%d",&i);getchar();printf("ntt 請輸入取出的連續(xù)字符數(shù):");scanf("%d",&j);getchar();SubStr(r,i,j);else if(choice='4')printf("ntt 請輸入從第幾個字符開始:"
11、);scanf("%d",&i);getchar();printf("ntt 請輸入刪除的連續(xù)字符數(shù):");scanf("%d",&j);getchar();DelStr(r,i-1,j);else if(choice='5')printf("ntt 請輸入在第幾個字符前插入: ");scanf("%d",&i);getchar();printf("ntt 請輸入所要插入的字符串: ");r1=CreateStr(&b);Ins
12、Str(r,r1,i-1);else if(choice='6')printf("ntt 請輸入所要查找的字符串: ");r1=CreateStr(&b);i=IndexStr(r,r1);if(i!=-1)printf("ntt第一次出現(xiàn)的位置是第個.n",i+1);elseprintf("ntt 該字串不在其中! n");else if(choice='7')printf("ntt請輸入第一個串: ");gets(c.vec);printf("ntt請輸入第二個
13、串: ");gets(d.vec);int k=EqualStr(&c,&d);if(k>0)printf("ntt第一個串大!n");else if(k<0)printf("ntt第二個串大!n");elseprintf("ntt 兩個串一樣大!n");else if(choice='8')printf("ntt 該串值為:");if(r->vec0='0')printf(" 空! n");elseputs(r->
14、;vec);else if(choice='0')break;elseprintf("ntt 請注意:輸入有誤!n");if(choice!='X'&&choice!='X')printf("ntt 按【 Enter 】鍵繼續(xù),按任意鍵返回主菜單.");p=getchar();if(p!='xA')getchar();break;4程序運行七: 1皴據(jù)結(jié)構(gòu)Debu&5.eze串子系統(tǒng)小 S事SS軍S大事回入第除入鬟不 整取,查比顯這 一 一一一 一一二2345678U
15、X:二二:請選擇菜單號。-8: 1謂稀入一'字符申:他c技【Fnt”】健穗.按任芭鍵返回主菜單.”"G; 數(shù)據(jù)結(jié)構(gòu)D.bug5. sc'技【Ent”】境地續(xù)。按任念便返回主菜單.串子系統(tǒng)X小 f s ffi s a a MX5£±££±£.-MX 入本壬除入戊頊?zhǔn)綳X 型啾察青”顯返“ 一 - _ 二 一 . _ k連接以后的新昂值為:ahc“F技 *nt:”】槿游運.按阡旁犍返回中菜單.按EntepJ慢繼續(xù),笈任意鍵返回主菜單.率子系統(tǒng)請選譚票堂號日-8: 3請輸入從第幾個字符開始:2請輸入取出的連續(xù)字將數(shù)
16、:2取出字符為:be按FntevJ鍵繼續(xù),充任憨鍵返回主菜羊.onsssss/S目 生于千本吐字入捋出除入找交示 墨取督查收顯返 _釬"G: 數(shù)據(jù)結(jié)構(gòu)Debucsy_4. cxc'口國 取出字符為:人按Enter】鍵繼柒,發(fā)任至犍返回主菜單.串子系統(tǒng)吊回 H4rb子子干了針子 入營除入我交示 要取翦查匯顯返請選擇菜單號0-8:請前入從第幾個字符開始:3請而入刪除的連續(xù)字殍數(shù):3技【Ent”】糙繼牧,技仟童鞋返回主菜!同可"C:數(shù)據(jù)結(jié)構(gòu)Dobug.y_* 0X0*請輸入從笫幾個字符開始:3請諭入冊除的淬續(xù)字符數(shù):3按Enter】槎繼續(xù),按E螢鍵返回主菜單.國子系統(tǒng)M
17、“«*«“ 看«-«S33BSS 八、a回 工了子子軋宇 入年守示 慝取融查顯返 二二二二一 _ _ _ _ 123456780xaM«x“M«x請選擇菜單號。一G: 8該串逋為:*brI按血畬2】鍵老續(xù),按任左鍵返回主菜飛:數(shù)據(jù)結(jié)構(gòu)Debugsy_4. c*c,該事,直為不“按【Enter】鍵繼操.發(fā)任至犍返回主菜單.串子系統(tǒng)吊回 H4rb子子干了子 入營除入我交示 獸取翦查總顯近 _請選擇菜單號5請諭人在第幾個字符前插入:2請諭入所關(guān)插入的字符串:技Rntev核繼而,按仟童健返回主菜八數(shù)據(jù)結(jié)構(gòu)Dahi】gtsy_4請輸入在笫幾個字
18、符前插入;2請輸入所要插入的字符串Shl按tE“C”】鍵繼續(xù),按住意鍵返回主菜單.區(qū) 3一一 一一一 一二一入監(jiān)除人彗示字字王當(dāng)三吐字 5民子系統(tǒng)請選擇榮盛號0 - 8: 8該串值為 aohibf技Enter鍵繼續(xù),按任意鍵返臼主菜單.|言,C:數(shù)據(jù)結(jié)構(gòu)Dobu八sy_4 oxo,該車值為:ashlbf按【Entez】鍵繼續(xù),按任意鍵返回主英甲.串子主于子子貶了 入接H除入爰不郁W比顯返 _請選擇菜單號。8: 6請瑜人所緊查找的字符串:ah:第一次日現(xiàn)的位置是第2個.fe Fntpp鍵繼續(xù),接任君鍵近叵主算單.按UntM】建聯(lián)續(xù),套任意鍵也回三菜單一請選擇菜單弓8修八7 請輸入第一個串:3府ngWi 請輸入第二個串;hai串子娶茅.串一個串大I£,£主已¥$,“.$叵 千壬二十子”字 入爵女K式示 霍取嚼古燧顯返 -按CEi.lsr解肘塞 按任意便返回主菜單.串sLJJmaa串小串回請進(jìn)烽
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國POS計費終端機(jī)數(shù)據(jù)監(jiān)測報告
- 2025年中國MINIDAS數(shù)據(jù)采集器數(shù)據(jù)監(jiān)測報告
- 2025年中國EVA薄膜數(shù)據(jù)監(jiān)測報告
- 2025年中國BMC玻璃纖維增強(qiáng)塑料數(shù)據(jù)監(jiān)測報告
- 2025年中國22倍彩色一體化變焦攝像機(jī)數(shù)據(jù)監(jiān)測報告
- 2025至2030年中國30孔保護(hù)袋市場分析及競爭策略研究報告
- 2025至2030年中國隔熱型采光板市場分析及競爭策略研究報告
- 2025至2030年中國輸液瓶市場分析及競爭策略研究報告
- 2025至2030年中國石墨膠棒市場分析及競爭策略研究報告
- 2025至2030年中國生理調(diào)理果汁冰沙機(jī)市場分析及競爭策略研究報告
- 初++中數(shù)學(xué)設(shè)計學(xué)校田徑運動會比賽場地+課件++人教版七年級數(shù)學(xué)上冊
- 《衛(wèi)星導(dǎo)航系統(tǒng)》全套教學(xué)課件
- 職業(yè)道德完全題庫附有答案
- 初高中物理銜接講座(初高中物理對比)
- 施工現(xiàn)場平面布置及臨時設(shè)施、臨時道路布置
- 小學(xué)六年級課后服務(wù):scratch少兒編程 四階第19課:BMI指數(shù)(上)
- 科技人才評價規(guī)范
- 《短視頻編輯與制作(第2版)》-第9章
- 醫(yī)院無菌操作知識培訓(xùn)
- 年產(chǎn)500噸40gL煙嘧磺隆可分散油懸浮劑農(nóng)藥項目環(huán)境影響評價報告表樣本
- 介紹方志敏(修訂版)
評論
0/150
提交評論