




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、C+課程設(shè)計(jì)報(bào)告課程設(shè)計(jì)題目:實(shí)現(xiàn)字符串的多種操作姓名:劉歡學(xué)籍號(hào):201110910422專業(yè)班級(jí):計(jì)算機(jī)科學(xué)與技術(shù)2班指導(dǎo)教師:秦相林目錄引言1.設(shè)計(jì)目的2.設(shè)計(jì)題目3.設(shè)計(jì)需求4.設(shè)計(jì)總體思路5.詳細(xì)設(shè)計(jì)6.運(yùn)行結(jié)果7.課程設(shè)計(jì)心得8.參考文獻(xiàn)引言隨著人們生活水平的提高,計(jì)算機(jī)發(fā)展異常迅速。如今,計(jì)算機(jī)已經(jīng)深入到我們社會(huì)的各個(gè)領(lǐng)域,計(jì)算機(jī)的使用也已不再局限于科學(xué)計(jì)算,它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。通過計(jì)算機(jī)對各類信息的管理已經(jīng)成為一種高效、快捷的方式。而C+課程設(shè)計(jì)是我們實(shí)踐性教學(xué)環(huán)節(jié)之一,結(jié)合實(shí)際應(yīng)用的要求,使課程設(shè)計(jì)既覆蓋C+的知識(shí)點(diǎn),又接近工程實(shí)際需要。通過課
2、程設(shè)計(jì)的綜合訓(xùn)練,培養(yǎng)我們實(shí)際分析問題、解決問題的能力,以及編程和動(dòng)手能力,最終目標(biāo)是通過課程設(shè)計(jì)這種形式,幫助學(xué)我們系統(tǒng)掌握C+這門課程的主要內(nèi)容,本課程設(shè)計(jì)就是要求完成一個(gè)字符串類的設(shè)計(jì),使所設(shè)計(jì)出的字符串類具有包括復(fù)制、連接、比較、求子串、交換等功能1. 設(shè)計(jì)目的本設(shè)計(jì)通過定義字符串類來實(shí)現(xiàn)對字符串的復(fù)制、連接、比較、求子串、交換操作。首先定義一個(gè)字符串類,通過調(diào)用字符串類中成員函數(shù),對字符串類進(jìn)行復(fù)制,然后實(shí)現(xiàn)了字符串類之間的連接,字符串類之間的相互比較,求一個(gè)字符串的子串,以及實(shí)現(xiàn)兩個(gè)字符串之間的交換。2. 設(shè)計(jì)題目實(shí)現(xiàn)字符串的多種操作3.設(shè)計(jì)需求通過本次的C+課程設(shè)計(jì),讓我們學(xué)會(huì)把
3、書本上的知識(shí)應(yīng)用到了實(shí)際中來。深入了解C+各類及相關(guān)函數(shù)的應(yīng)用,結(jié)合其它相關(guān)知識(shí),如軟件工程等,把所學(xué)知識(shí)融會(huì)貫通。對系統(tǒng)進(jìn)行功能需求分析,設(shè)計(jì)合理的數(shù)據(jù)結(jié)構(gòu)和系統(tǒng)框架,編程簡練,程序功能齊全,能正確運(yùn)行。具有要求如下:1字符串類對象的輸入輸出 ;2.字符串的長度 ;3.字符串的連接 ;4.字符串的復(fù)制;5.字符串的比較 ;6.對其求子字符串 ;7.子串交換功能 ;4.設(shè)計(jì)總體思路我們設(shè)計(jì)一個(gè)程序,定義字符串類,包含存放字符串的字符數(shù)組和字符串中字符的個(gè)數(shù)。實(shí)現(xiàn)功能。設(shè)計(jì)菜單功能選擇,字符串的復(fù)制,連接,比較,求子串以及交換Class string設(shè)計(jì)一個(gè)字符串類并構(gòu)造函數(shù),用strcpy,c
4、ompare,strcat,Substring及exchange實(shí)現(xiàn)各種操作。字符串類的設(shè)計(jì)輸入字符串對字符串連接輸出運(yùn)算后的結(jié)果對字符串求子串字符串比較字符串復(fù)制字符串交換5.詳細(xì)設(shè)計(jì)#include<iostream>#include<fstream>using namespace std;char s12;char s120;const int MAX=5;class Stringpublic:char *str;int length;static void menun() cout<<" "<<endl; cout&l
5、t;<"t 歡迎進(jìn)入字符串設(shè)計(jì) t"<<endl;cout<<" "<<endl;cout<<" *_* 功能選擇菜單"<<endl;cout<<" 1 enter ,執(zhí)行字符串復(fù)制! "<<endl;cout<<" 2 enter ,執(zhí)行字符串鏈接! "<<endl;cout<<" 3 enter ,執(zhí)行字符創(chuàng)比較! "<<endl;co
6、ut<<" 4 enter ,執(zhí)行字符串求字串! "<<endl;cout<<" 5 enter ,執(zhí)行字符串交換! "<<endl;cout<<" 0 enter ,退出."<<endl;String(char *s,int l)str=new charstrlen(s)+1;strcpy(str,s);length=l;cout<<"Construct String!n"String()delete str;void Strcp
7、y(char *s) char *x; x=new charstrlen(s)+1;strcpy(x,s);deletestr;str=x;length=strlen(x);cout<<str<<endl;void Strcat(char *z)char *a;a=new charstrlen(z)+length;strcpy(a,str);strcat(a,z);str=a;cout<<str<<endl;void Compare(char *b)cout<<"str compare b is:"<<
8、strcmp(str,b)<<endl;char * substring(int start,int end)char *newstr=new charend-start+1;int i,j=0;for(i=start;i<end;i+,j+)newstrj=stri;newstrj='0'return newstr;void exchange(char *e) char *temp1,*temp2;temp1=new charlength;temp2=new charstrlen(e)+1;strcpy(temp1,str);strcpy(temp2,e);
9、str=temp2;e=temp1;cout<<e<<endl;cout<<str<<endl; void write(char s110)ofstream out;out.open("f:filej.text",ios:out|ios:ate|ios:app); if(!out)cout<<"Can not open file !"<<endl; out<<s1<<"n" out.close(); char * read() ifstre
10、am in; in.open("f:filej.text",ios:in); if(!in)cout<<"Can not open file !"<<endl;return NULL; int k=1; while(k) in.getline(s,12);k=0; in.close(); return s; char * read2(int k) ifstream in; in.open("f:filej.text",ios:in); if(!in)cout<<"Can not open
11、file !"<<endl;return NULL; while(k) in.getline(s,12);k-; in.close(); return s; void write2(int n)ofstream out;out.open("f:filej.text",ios:out|ios:ate|ios:app); if(!out)cout<<"Can not open file !"<<endl;/return NULL; while(n) char s120; cin>>s1; out<
12、;<s1<<"n" n-; cout<<"t* 文件創(chuàng)建成功! *t"<<endl; out.close(); int main() cout<<"n C+課程設(shè)計(jì):字符串類的設(shè)計(jì)n" cout<<" *n" cout<<" * 設(shè)計(jì)人:劉歡 *n"cout<<" * 學(xué)號(hào):201110910422 *n"cout<<" * 專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)2班 *n&quo
13、t; cout<<" *n"cout<<"n"<<"請輸入字符串:n"write2(MAX);String:menun();cout<<"輸入n選擇文件中第幾個(gè)字符串:n"int m;cin>>m;cout<<"建立類的對象str1:n"String str1( read2(m),12);cout<<str1.str<<endl;int k;int j=1;cout<<"請選擇操
14、作<當(dāng)輸入為0時(shí)結(jié)束操作,退出. >n"while(j!=0&&cin>>k)switch(k)case 1:cout<<"輸入m選擇文件中第幾個(gè)字符串復(fù)制:n" cin>>m; str1.Strcpy(read2(m);write(str1.str); cout<<"復(fù)制后的字符串:" cout<<str1.str <<endl;break; case 2:cout<<"輸入m選擇文件中第幾個(gè)字符串鏈接:n" c
15、in>>m; str1.Strcat(read2(m); write(str1.str); cout<<"連接后的字符串:"<<str1.str<<endl;break; case 3:cout<<"輸入m選擇文件中第幾個(gè)字符串進(jìn)行比較:n" cin>>m; str1.Compare(read2(m);break; case 4:cout<<"下面開始求子串n" int m,n; cout<<"請輸入需要取子串的起始與結(jié)束位置:
16、n" cin>>m>>n; cout<<"所求子串為: " cout<<str1.substring(m,n)<<endl;break; case 5: cout<<"輸入m選擇文件中第幾個(gè)字符串進(jìn)行交換:n" cin>>m;str1.exchange(read2(m) ;break; case 6: default: cout<<"你輸入的功能序號(hào)有誤,請重新輸入!"<<endl; case 0: j=0; cout<<"謝謝使用,退出字符串設(shè)計(jì).n" break;return 0;6.運(yùn)行結(jié)果7.課程設(shè)計(jì)心得首先,這次課程設(shè)計(jì)使我深刻感受到平日書本上看似簡單的理論知識(shí)在真正派上用場的時(shí)候當(dāng)中所涵蓋的學(xué)問是那么多。理論與實(shí)踐的距離之間我們今天的努力還只是一個(gè)開始。只有理論知識(shí)沒有實(shí)踐經(jīng)驗(yàn)是不可能成為一名出色的軟件設(shè)計(jì)師的。理論是實(shí)踐的基礎(chǔ),實(shí)踐是對所學(xué)知識(shí)的鞏固與提高,只有理論與實(shí)踐相結(jié)合才能真正掌握知識(shí)。設(shè)計(jì)思
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 IEC 63438:2024 EN Railway applications - Fixed installations - Protection principles for AC and DC electric traction power supply systems
- 2025-2030年中國鍋爐制造行業(yè)運(yùn)營狀況及發(fā)展規(guī)劃分析報(bào)告
- 2025-2030年中國鏟運(yùn)機(jī)市場發(fā)展現(xiàn)狀及前景趨勢分析報(bào)告
- 2025-2030年中國鉛鋅冶煉市場運(yùn)營狀況及發(fā)展策略研究報(bào)告
- 2025山西省建筑安全員B證(項(xiàng)目經(jīng)理)考試題庫
- 2025年青海省安全員-C證考試(專職安全員)題庫附答案
- 2025-2030年中國虹膜識(shí)別機(jī)系統(tǒng)市場經(jīng)營狀況及發(fā)展建議分析報(bào)告
- 2025年天津市安全員《A證》考試題庫
- 2025-2030年中國相容劑行業(yè)發(fā)展現(xiàn)狀及投資規(guī)劃研究報(bào)告
- 2025-2030年中國生物質(zhì)鍋爐產(chǎn)業(yè)運(yùn)營狀況與發(fā)展?jié)摿Ψ治鰣?bào)告
- 加強(qiáng)師德師風(fēng)建設(shè)學(xué)校師德師風(fēng)警示教育講座培訓(xùn)課件
- 豬飼料購銷合同書
- 常用小學(xué)生詞語成語積累歸類大全
- 七種不同樣式的標(biāo)書密封條
- 全國水利工程監(jiān)理工程師培訓(xùn)教材質(zhì)量控制
- 中國傳統(tǒng)成語故事(英文版)
- 鑄造廠總降壓變電所及廠區(qū)配電系統(tǒng)設(shè)計(jì)
- 航拍中國優(yōu)秀課件
- 《做自己的心理醫(yī)生 現(xiàn)代人的心理困惑和自我療愈策略》讀書筆記思維導(dǎo)圖PPT模板下載
- 小學(xué)音樂組集體備課計(jì)劃
- 稿件修改說明(模板)
評(píng)論
0/150
提交評(píng)論