課程設(shè)計(jì)-實(shí)現(xiàn)字符串的多種操作_第1頁(yè)
課程設(shè)計(jì)-實(shí)現(xiàn)字符串的多種操作_第2頁(yè)
課程設(shè)計(jì)-實(shí)現(xiàn)字符串的多種操作_第3頁(yè)
課程設(shè)計(jì)-實(shí)現(xiàn)字符串的多種操作_第4頁(yè)
課程設(shè)計(jì)-實(shí)現(xiàn)字符串的多種操作_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

C++課程設(shè)計(jì)報(bào)告課程設(shè)計(jì)題目:實(shí)現(xiàn)字符串的多種操作姓名:劉歡學(xué)籍號(hào):202110910422專業(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ī)對(duì)各類信息的管理已經(jīng)成為一種高效、快捷的方式。而C++課程設(shè)計(jì)是我們實(shí)踐性教學(xué)環(huán)節(jié)之一,結(jié)合實(shí)際應(yīng)用的要求,使課程設(shè)計(jì)既覆蓋C++的知識(shí)點(diǎn),又接近工程實(shí)際需要。通過課程設(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)對(duì)字符串的復(fù)制、連接、比較、求子串、交換操作。首先定義一個(gè)字符串類,通過調(diào)用字符串類中成員函數(shù),對(duì)字符串類進(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ì)把書本上的知識(shí)應(yīng)用到了實(shí)際中來。深入了解C++各類及相關(guān)函數(shù)的應(yīng)用,結(jié)合其它相關(guān)知識(shí),如軟件工程等,把所學(xué)知識(shí)融會(huì)貫通。對(duì)系統(tǒng)進(jìn)行功能需求分析,設(shè)計(jì)合理的數(shù)據(jù)結(jié)構(gòu)和系統(tǒng)框架,編程簡(jiǎn)練,程序功能齊全,能正確運(yùn)行。具有要求如下:1字符串類對(duì)象的輸入輸出;2.字符串的長(zhǎng)度;3.字符串的連接;4.字符串的復(fù)制;5.字符串的比較;6.對(duì)其求子字符串;7.子串交換功能;4.設(shè)計(jì)總體思路我們?cè)O(shè)計(jì)一個(gè)程序,定義字符串類,包含存放字符串的字符數(shù)組和字符串中字符的個(gè)數(shù)。實(shí)現(xiàn)功能。設(shè)計(jì)菜單功能選擇,字符串的復(fù)制,連接,比較,求子串以及交換Classstring設(shè)計(jì)一個(gè)字符串類并構(gòu)造函數(shù),用strcpy,compare,strcat,Substring及exchange實(shí)現(xiàn)各種操作。字符串類的設(shè)計(jì)字符串類的設(shè)計(jì)輸入字符串輸入字符串……對(duì)字符串連接對(duì)字符串連接輸出運(yùn)算后的結(jié)果對(duì)字符串求子串輸出運(yùn)算后的結(jié)果對(duì)字符串求子串字符串比較字符串復(fù)制字符串交換5.詳細(xì)設(shè)計(jì)#include<iostream>#include<fstream>usingnamespacestd;chars[12];chars1[20];constintMAX=5;classString{public: char*str; intlength; staticvoidmenun() {cout<<"▲▼◥▲▼◥▲▼◥▲▼◥▲▼◥▲▼▲▼◥▲▼◥▲▼◥▲▼◥▲▼"<<endl; cout<<"\t▲▼◥▲歡迎進(jìn)入字符串設(shè)計(jì)▲▼◥▲\t"<<endl; cout<<"▲▼◥▲▼◥▲▼◥▲▼◥▲▼◥▲▼▲▼◥▲▼◥▲▼◥▲▼◥▲▼"<<endl; cout<<"*^_^*功能選擇菜單"<<endl; cout<<"★★★1enter,執(zhí)行字符串復(fù)制!!!★★★"<<endl; cout<<"★★★2enter,執(zhí)行字符串鏈接!!!★★★"<<endl; cout<<"★★★3enter,執(zhí)行字符創(chuàng)比較!!!★★★"<<endl; cout<<"★★★4enter,執(zhí)行字符串求字串!!!★★★"<<endl; cout<<"★★★5enter,執(zhí)行字符串交換!!!★★★"<<endl; cout<<"★★★0enter,退出..."<<endl; } String(char*s,intl) { str=newchar[strlen(s)+1]; strcpy(str,s); length=l; cout<<"ConstructString!\n"; } ~String() { delete[]str; } voidStrcpy(char*s) {char*x; x=newchar[strlen(s)+1]; strcpy(x,s); delete[]str; str=x; length=strlen(x); cout<<str<<endl; } voidStrcat(char*z) { char*a; a=newchar[strlen(z)+length]; strcpy(a,str); strcat(a,z); str=a; cout<<str<<endl; } voidCompare(char*b) { cout<<"strcomparebis:"<<strcmp(str,b)<<endl; } char*substring(intstart,intend) { char*newstr=newchar[end-start+1]; inti,j=0; for(i=start;i<end;i++,j++) newstr[j]=str[i]; newstr[j]='\0'; returnnewstr; } voidexchange(char*e) { char*temp1,*temp2; temp1=newchar[length]; temp2=newchar[strlen(e)+1]; strcpy(temp1,str); strcpy(temp2,e); str=temp2; e=temp1; cout<<e<<endl; cout<<str<<endl; }};voidwrite(chars1[10]){ ofstreamout; out.open("f:\\filej.text",ios::out|ios::ate|ios::app);if(!out) { cout<<"Cannotopenfile!"<<endl; }out<<s1<<"\n";out.close();}char*read(){ ifstreamin;in.open("f:\\filej.text",ios::in);if(!in) { cout<<"Cannotopenfile!"<<endl; returnNULL; }intk=1;while(k){in.getline(s,12);k=0;}in.close();returns;}char*read2(intk){ ifstreamin;in.open("f:\\filej.text",ios::in);if(!in) { cout<<"Cannotopenfile!"<<endl; returnNULL; }while(k){in.getline(s,12);k--;}in.close();returns;}voidwrite2(intn){ ofstreamout; out.open("f:\\filej.text",ios::out|ios::ate|ios::app);if(!out) { cout<<"Cannotopenfile!"<<endl; //returnNULL; }while(n){chars1[20];cin>>s1; out<<s1<<"\n";n--;}cout<<"\t*文件創(chuàng)建成功!!*\t"<<endl;out.close();}intmain(){cout<<"\nC++課程設(shè)計(jì):字符串類的設(shè)計(jì)\n";cout<<"***********************************************\n";cout<<"*****設(shè)計(jì)人:劉歡*****\n"; cout<<"*****學(xué)號(hào):202110910422*****\n"; cout<<"*****專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)2班*****\n";cout<<"***********************************************\n"; cout<<"\n"<<"請(qǐng)輸入字符串:\n"; write2(MAX); String::menun(); cout<<"輸入n選擇文件中第幾個(gè)字符串:\n"; intm; cin>>m; cout<<"建立類的對(duì)象str1:\n"; Stringstr1(read2(m),12); cout<<str1.str<<endl; intk;intj=1; cout<<"請(qǐng)選擇操作<當(dāng)輸入為0時(shí)結(jié)束操作,退出...>\n"; while(j!=0&&cin>>k) switch(k) { case1: cout<<"輸入m選擇文件中第幾個(gè)字符串復(fù)制:\n"; cin>>m; str1.Strcpy(read2(m));write(str1.str); cout<<"復(fù)制后的字符串:"; cout<<str1.str<<endl; break; case2: cout<<"輸入m選擇文件中第幾個(gè)字符串鏈接:\n"; cin>>m; str1.Strcat(read2(m)); write(str1.str); cout<<"連接后的字符串:"<<str1.str<<endl; break; case3: cout<<"輸入m選擇文件中第幾個(gè)字符串進(jìn)行比較:\n"; cin>>m; str1.Compare(read2(m)); break; case4: cout<<"下面開始求子串\n"; intm,n; cout<<"請(qǐng)輸入需要取子串的起始與結(jié)束位置:\n"; cin>>m>>n; cout<<"所求子串為:"; cout<<str1.substring(m,n)<<endl; break; case5: cout<<"輸入m選擇文件中第幾個(gè)字符串進(jìn)行交換:\n"; cin>>m; str1.exchange(read2(m)); break;case6: default:cout<<"你輸入的功能序號(hào)有誤,請(qǐng)重新輸入!!"<<endl; case0: j=0; cout<<"謝謝使用,退出字符串設(shè)計(jì)....\n"; break; } return0;}6.運(yùn)行結(jié)果7.課程設(shè)計(jì)心得首先,這次課程設(shè)計(jì)使我深刻感受到平日書本上看似簡(jiǎn)單的理論知識(shí)在真正派上用場(chǎng)的時(shí)候當(dāng)中所涵蓋的學(xué)問是那么多。理論與實(shí)踐的距離之間我們今天的努力還只是一個(gè)開始。只有理論知識(shí)沒有實(shí)踐經(jīng)驗(yàn)是不可能成為一名出色的軟件設(shè)計(jì)師的。理論是實(shí)踐的基礎(chǔ),實(shí)踐是對(duì)所學(xué)知識(shí)的鞏固與提高,只有理論與實(shí)踐相結(jié)合才能真正掌握知識(shí)。設(shè)計(jì)思想是很重要的,沒有一個(gè)人能說自己對(duì)于一個(gè)問題考慮得面面具到,一個(gè)再成功的個(gè)人也離不開一個(gè)優(yōu)秀的團(tuán)體。所以只有通過研究出來的設(shè)計(jì)思想才是清晰的、全面的,這是一個(gè)好的程序最基本的要求,也是我們成功的決定性因素。雖然這次設(shè)計(jì)我做的不是很成功,但是我通過了自己的努力完成了這次設(shè)計(jì),使我增強(qiáng)動(dòng)手能力的同時(shí)也提高了我的基礎(chǔ)文化知識(shí)。使我不再單調(diào)的只會(huì)看課本上的東西而不會(huì)運(yùn)用,讓我懂得了學(xué)而會(huì)用的道理。在以后的學(xué)習(xí)中,不再懈怠自己,努力讓自己變得更優(yōu)秀!8.參考文獻(xiàn)C++程序設(shè)計(jì)教程(修訂版)錢能著面向?qū)ο蟪绦蛟O(shè)計(jì)(C++語(yǔ)言)李愛華程磊著

公司印章管理制度一、目的公司印章是公司對(duì)內(nèi)對(duì)外行使權(quán)力的標(biāo)志,也是公司名稱的法律體現(xiàn),因此,必須對(duì)印章進(jìn)行規(guī)范化、合理化的嚴(yán)格管理,以保證公司各項(xiàng)業(yè)務(wù)的正常運(yùn)作,由公司指定專人負(fù)責(zé)管理。二、印章的種類公章,是按照政府規(guī)定,由主管部門批準(zhǔn)刻制的代表公司權(quán)力的印章。專用章,為方便工作專門刻制的用于某種特定用途的印章,如:合同專用章、財(cái)務(wù)專用章、業(yè)務(wù)專用章、倉(cāng)庫(kù)簽收章等。3、手章(簽名章),是以公司法人代表名字刻制的用于公務(wù)的印章。三、印章的管理規(guī)定印章指定專人負(fù)責(zé)保管和使用,保管印章的地方(桌、柜等)要牢固加鎖,印章使用后

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論