




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、博客文章管理系統(tǒng)一 需求分析本次課程設(shè)計(jì)需要實(shí)現(xiàn)的是博客文章管理系統(tǒng)。經(jīng)過(guò)初步研究調(diào)查,博客文章項(xiàng)目多種多樣,有小說(shuō)、散文、詩(shī)歌等。各項(xiàng)研究的人員也是不同的,各項(xiàng)文章投入的內(nèi)容各有差異。所以初步設(shè)定文章的屬性有編號(hào)、文章名和文章類(lèi)別等等。文章項(xiàng)目被不斷的研究出來(lái),所以系統(tǒng)需要實(shí)現(xiàn)錄入與刪除功能。讀者對(duì)文章研究項(xiàng)目需要進(jìn)行選擇,系統(tǒng)必須相應(yīng)的實(shí)現(xiàn)查詢(xún)與排序的功能。最后,文章項(xiàng)目被確定以后,系統(tǒng)需要把數(shù)據(jù)從內(nèi)存中寫(xiě)入硬盤(pán),實(shí)現(xiàn)輸入輸出功能。系統(tǒng)簡(jiǎn)單流程: 開(kāi)始 退出刪除顯示保存修改查詢(xún)添加項(xiàng)目選擇博客文章管理系統(tǒng):1.理順和規(guī)范文章信息的查詢(xún)和數(shù)據(jù)保存。2.提供集成的信息系統(tǒng),實(shí)現(xiàn)業(yè)務(wù)數(shù)據(jù)和資料的
2、共享。3.由于數(shù)據(jù)的處理由系統(tǒng)自動(dòng)完成,準(zhǔn)確性與及時(shí)性大大提高,分析手段更加規(guī)范和多樣,不但減輕了工作強(qiáng)度,還將促進(jìn)博客管理人員從繁瑣的事務(wù)處理中解放出來(lái),用更多的時(shí)間研究文章的分類(lèi)和更高效的管理,研究并運(yùn)用現(xiàn)代管理方法改進(jìn)博客文章信息管理,促進(jìn)現(xiàn)代管理方法在文章管理中的廣泛應(yīng)用。博客文章系統(tǒng)各功能模塊 :1、登記入錄函數(shù);2、輸出顯示函數(shù);3、保存數(shù)據(jù)函數(shù);4、刪除函數(shù);5修改函數(shù);6、查詢(xún)函數(shù)(內(nèi)分:按編號(hào)查詢(xún)、按發(fā)布日期查詢(xún)、按文章名查詢(xún)、退出查詢(xún));7退出函數(shù)2 系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)a)系統(tǒng)研究項(xiàng)目類(lèi) 系統(tǒng)研究項(xiàng)目類(lèi)中,ID是文章編號(hào),Name是文章名稱(chēng),Time是發(fā)布日期等等。研究項(xiàng)目整個(gè)
3、類(lèi)中包含一個(gè)輸出函數(shù)。所有數(shù)據(jù)成員與函數(shù)成員均為公有類(lèi)型。class cBlogarticle+ IDBUFSIZE:char/ 文章編號(hào)+ NameBUFSIZE:char/文章名稱(chēng)+ TimeBUFSIZE:char/發(fā)布日期+ FunctionBUFSIZE:char/主要內(nèi)容+StayTime :int/有效期+Recommendedindex:double/推薦指數(shù)+ flay :bool/標(biāo)志+ cBlogarticle()/構(gòu)造函數(shù)初始化b)設(shè)定的界面 博客文章管理系統(tǒng) 1:文章信息添加 2:文章信息顯示 3:文章信息保存 4:文章信息刪除 5:文章信息修改 6:文章信息查詢(xún) 7
4、:退 出 系 統(tǒng) 你選擇c)關(guān)鍵代碼的分析(1) 讀取數(shù)據(jù)庫(kù)void ReadData(tList<cBlogarticle> *tListMedic)/讀取數(shù)據(jù)庫(kù)char bufBUFSIZE; ifstream ifile("Blogarticle.txt",ios_base:in);/創(chuàng)建一個(gè)輸出文件流對(duì)象if (!ifile) cerr << "讀取時(shí)打開(kāi)文件出錯(cuò)!" << endl; cBlogarticle Blogarticle;while(ifile.getline(buf,BUFSIZE) /遍歷文本
5、,讀取數(shù)據(jù)ifile.getline(buf,BUFSIZE);strcpy(Blogarticle.ID,buf);/讀取文章編號(hào)memset(buf,0,BUFSIZE);ifile.getline(buf,BUFSIZE);/讀取文章名strcpy(Blogarticle.Name,buf);memset(buf,0,BUFSIZE);ifile.getline(buf,BUFSIZE);/讀取發(fā)布日期strcpy(Blogarticle.Time,buf);memset(buf,0,BUFSIZE);ifile.getline(buf,BUFSIZE);/讀取類(lèi)別strcpy(Blog
6、article.Style,buf);memset(buf,0,BUFSIZE);file.getline(buf,BUFSIZE);/讀取主要內(nèi)容strcpy(Blogarticle.Function,buf);memset(buf,0,BUFSIZE);ifile.getline(buf,BUFSIZE);/讀取有效期Blogarticle.StayTime=atoi(buf);memset(buf,0,BUFSIZE);ifile.getline(buf,BUFSIZE);/讀取推薦指數(shù)Blogarticle.Recommendedindex=atoi(buf);memset(buf,0
7、,BUFSIZE);Blogarticle.flag=true;tListMedic->Insert(Blogarticle);cout<<"讀取數(shù)據(jù)成功!nn"ifile.close();/關(guān)閉文件return;void Display(tList<cBlogarticle> *tListMedic) /顯示鏈表 cNode<cBlogarticle> *p;p=tListMedic->head->next;while(p) if(p->data.flag) cout<<"nn文章編號(hào):&q
8、uot;<<(p->data).ID<<"t文章名:"<<(p->data).Name<<"ntt發(fā)布日期:"<<(p->data).Time<<"ntt類(lèi)別:"<<(p->data).Style;cout<<"ntt主要內(nèi)容:"<<(p->data).Function<<"ntt有效期:"<<(p->data).StayTime
9、<<"ntt推薦指數(shù)"<<(p->data).Recommendedindex;p=p->next;cout<<endl;system("pause");system("cls");return;(2)添加文章函數(shù)void AddTheBlogarticle(tList<cBlogarticle> *tListMedic)/添加文章函數(shù) cin>>tempBlogarticle.Name;/讀入文章名cout<<"請(qǐng)輸入文章發(fā)布日期:&quo
10、t;cin>>tempBlogarticle.Time;/讀入發(fā)布日期cout<<"請(qǐng)輸入文章類(lèi)別:"cin>>tempBlogarticle.Style;/讀入類(lèi)別cout<<"請(qǐng)輸入文章主要內(nèi)容:"cin>>tempBlogarticle.Function;/讀入主要內(nèi)容cout<<"請(qǐng)輸入文章有效期:"cin>>tempBlogarticle.StayTime;/讀入有效期cout<<"請(qǐng)輸入推薦指數(shù)"cin>
11、;>tempBlogarticle.Recommendedindex;/讀入指數(shù)tempBlogarticle.flag=true;tListMedic->Insert(tempBlogarticle);cout<<"添加成功!n"system("pause");system("cls");(3) 保存數(shù)據(jù)void SaveData(tList<cBlogarticle> *tListMedic)/保存數(shù)據(jù)int i=0;ofstream ofile("Blogarticle.txt&qu
12、ot;,ios_base:out);/創(chuàng)建一個(gè)輸入文件流對(duì)象if (!ofile) cerr << "保存時(shí)打開(kāi)文件出錯(cuò)!" << endl; cNode<cBlogarticle> *p;p=tListMedic->head->next;while(p)/從內(nèi)存中讀取數(shù)據(jù),存到外盤(pán)if(p->data.flag) ofile<<"n"ofile<<(p->data).ID<<"n"ofile<<(p->data).Nam
13、e<<"n"ofile<<(p->data).Time<<"n"ofile<<(p->data).Style<<"n"ofile<<(p->data).Function<<"n"ofile<<(p->data).StayTime<<"n"ofile<<(p->data).Recommendedindex<<"n"p=
14、p->next;cout<<"保存數(shù)據(jù)成功!n"ofile.close();system("pause");system("cls");return;(4) 查詢(xún)函數(shù)void FindTheBlogarticleById(tList<cBlogarticle> *tListMedic)/根據(jù)文章編號(hào)查找文章char idBUFSIZE;cout<<"n請(qǐng)輸入你要查找的文章編號(hào):"cin>>id;/讀取文章編號(hào)bool flag=false; cNode<c
15、Blogarticle> *p;p=tListMedic->head->next;while(p)if(strcmp(p->data.ID,id)=0 && p->data.flag)flag=true;break;p=p->next;if(flag=false) cout<<"對(duì)不起,沒(méi)有你所查找的文章!n"/如果找不到else /如果找到了/顯示屏幕cout<<"n找到了,該文章的信息是:n"cout<<"nn文章編號(hào):"<<(p-
16、>data).ID<<"t文章名:"<<(p->data).Name<<"ntt發(fā)布日期:"<<(p->data).Time<<"ntt類(lèi)別:"<<(p->data).Style;cout<<"ntt主要內(nèi)容:"<<(p->data).Function<<"ntt有效期:"<<(p->data).StayTime<<"n
17、tt推薦指數(shù)"<<(p->data).Recommendedindex; cout<<endl;system("pause");system("cls");return;(5) 查找文章void FindTheBlogarticle(tList<cBlogarticle> *tListMedic)/查找文章system("cls");while(1)cout<<"nnnn"cout<<" 1:按文章編號(hào)查詢(xún)nn"cout
18、<<" 2:按文章名查詢(xún)nn"cout<<" 3:按類(lèi)別查詢(xún)nn"cout<<" 4:退出查詢(xún)nn"cout<<"你選擇:"int choose=0;cin>>choose;switch(choose)/根據(jù)用戶(hù)選擇case 1:FindTheBlogarticleById(tListMedic);/按文章編號(hào)查詢(xún)break;case 2:FindTheBlogarticleByName(tListMedic);/按文章名查詢(xún)break;case 3:Fi
19、ndTheBlogarticleByStyle(tListMedic); /按類(lèi)別查詢(xún)break;case 4:system("cls");return;/退出查詢(xún)default:break;return;(6)修改文章信息void ModifyTheBlogarticle(tList<cBlogarticle> *tListMedic)/修改文章信息char idBUFSIZE;cout<<"n請(qǐng)輸入你要查找的文章編號(hào):"cin>>id;/讀取文章編號(hào)bool flag=false; cNode<cBlogar
20、ticle> *p;p=tListMedic->head->next;while(p)if(strcmp(p->data.ID,id)=0 && p->data.flag)flag=true;break;p=p->next;if(flag=false) cout<<"對(duì)不起,沒(méi)有你所查找的文章!n"/如果找不到else /如果找到了/顯示屏幕cout<<"找到了,該文章的原始信息是:n"cout<<"nn文章編號(hào):"<<(p->d
21、ata).ID<<"t文章名:"<<(p->data).Name<<"ntt發(fā)布日期:"<<(p->data).Time<<"ntt類(lèi)別:"<<(p->data).Style;cout<<"ntt主要內(nèi)容:"<<(p->data).Function<<"ntt有效期:"<<(p->data).StayTime<<"ntt推薦指
22、數(shù)"<<(p->data).Recommendedindex;cout<<"n下面開(kāi)始修改該文章的信息:n"cBlogarticle tempBlogarticle; /定義臨時(shí)文章cout<<"請(qǐng)輸入文章文章編號(hào):"cin>>tempBlogarticle.ID;/讀入文章編號(hào)cout<<"請(qǐng)輸入文章文章名:"cin>>tempBlogarticle.Name;/讀入文章名cout<<"請(qǐng)輸入發(fā)布日期:"cin&g
23、t;>tempBlogarticle.Time;/讀入發(fā)布日期cout<<"請(qǐng)輸入文章類(lèi)別:"cin>>tempBlogarticle.Style;/讀入類(lèi)別cout<<"請(qǐng)輸入文章主要內(nèi)容:"cin>>tempBlogarticle.Function;/讀入主要內(nèi)容cout<<"請(qǐng)輸入文章有效期:"cin>>tempBlogarticle.StayTime;/讀入有效期cout<<"請(qǐng)輸入推薦指數(shù):"cin>>t
24、empBlogarticle.Recommendedindex;/讀入指數(shù)tempBlogarticle.flag=true;p->data=tempBlogarticle;cout<<"修改成功!" cout<<endl;system("pause");system("cls");return;(7)刪除文章信息void DeleteTheBlogarticle(tList<cBlogarticle> *tListMedic)/刪除文章信息char idBUFSIZE;cout<<
25、;"n請(qǐng)輸入你要查找的文章編號(hào):"cin>>id;/讀取文章編號(hào)bool flag=false;int count=0; cNode<cBlogarticle> *p;p=tListMedic->head->next;while(p)if(strcmp(p->data.ID,id)=0 && p->data.flag)count+;flag=true;break;p=p->nextif(flag=false) cout<<"對(duì)不起,沒(méi)有你所查找的文章!n"/如果找不到els
26、e /如果找到了 count-;cout<<"找到了,該文章的原始信息是:n"cout<<"nn文章編號(hào):"<<(p->data).ID<<"t文章名:"<<(p->data).Name<<"ntt發(fā)布日期:"<<(p->data).Time<<"ntt類(lèi)別:"<<(p->data).Style;cout<<"ntt主要內(nèi)容:"<
27、;<(p->data).Function<<"ntt有效期:"<<(p->data).StayTime<<"ntt推薦指數(shù)"<<(p->data).Recommendedindex;cout<<endl;(p->data).flag=false;cout<<"該文章的信息刪除成功!n" cout<<endl;system("pause");system("cls");return;(
28、8)主函數(shù)int main() tList<cBlogarticle> tListMedic;tListMedic.Create(); /創(chuàng)建鏈表ReadData(&tListMedic);while(1) cout<<"nn 博 客 文 章 管 理 系 統(tǒng) nn"cout<<" -nn"cout<<" 1:文章信息添加nn"cout<<" 2:文章信息顯示nn"cout<<" 3:文章信息保存nn"cout<
29、<" 4:文章信息刪除nn"cout<<" 5:文章信息修改nn"cout<<" 6:文章信息查詢(xún)nn"cout<<" 7:退 出 系 統(tǒng) nn"cout<<"你選擇:"int choose=0;scanf("%d",&choose);switch(choose)/根據(jù)用戶(hù)選擇case 1:AddTheBlogarticle(&tListMedic);/文章基本信息錄入break;case 2:Displa
30、y(&tListMedic);/文章基本信息顯示break;case 3:SaveData(&tListMedic); /文章基本信息保存break;case 4:DeleteTheBlogarticle(&tListMedic);/文章基本信息刪除break;case 5:ModifyTheBlogarticle(&tListMedic);/文章基本信息修改break;case 6:FindTheBlogarticle(&tListMedic);/文章基本信息查詢(xún)break;case 7:exit(0);/退出default:break;return 0; 調(diào)試編譯成功后開(kāi)始運(yùn)行,信息錄入后,不能在文檔中正確可見(jiàn),經(jīng)Debug調(diào)試,發(fā)現(xiàn),打開(kāi)文件方式出現(xiàn)錯(cuò)誤,改之,運(yùn)行正確。改動(dòng)后的代碼: cout<<"請(qǐng)輸入文章類(lèi)別:"cin>>tempBlogarticle.Style;/讀入類(lèi)別cout<<"請(qǐng)輸入文章主要內(nèi)容:"cin>>tempBlogarticle.Function;/讀入主要內(nèi)容cout<<"請(qǐng)輸入文章有效期:"cin>>tempBlogarticle.StayTime;/
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電信行業(yè)網(wǎng)絡(luò)優(yōu)化與安全防護(hù)策略方案
- 項(xiàng)目可行性研究報(bào)告指南
- 季度營(yíng)銷(xiāo)活動(dòng)策劃方案
- 汽車(chē)銷(xiāo)售與服務(wù)營(yíng)銷(xiāo)策略試題
- 農(nóng)村水利建設(shè)與管理指南
- 三農(nóng)合作金融支持方案
- 汽車(chē)維修工初級(jí)2023學(xué)習(xí)復(fù)習(xí)測(cè)試附答案
- 旅游度假區(qū)設(shè)施升級(jí)與改造手冊(cè)
- 文化傳媒行業(yè)內(nèi)容創(chuàng)意及傳播策略
- 酒店客房智能控制系統(tǒng)研發(fā)與推廣計(jì)劃制定等
- 人教版2024-2025學(xué)年數(shù)學(xué)八年級(jí)下學(xué)期 16.2二次根式的乘除法同步練習(xí)【基礎(chǔ)練】(含答案)
- 2025年山東省職教高考《英語(yǔ)》高頻必練考試題庫(kù)400題(含答案)
- 2025高考誓師大會(huì)校長(zhǎng)講話(huà):最后100天從“青銅”逆襲成“王者”
- 2024-2025學(xué)年第二學(xué)期國(guó)旗下講話(huà)稿及安排
- 2025年安徽審計(jì)職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)有答案
- 2024年甘肅省白銀市中考數(shù)學(xué)試卷(附答案)
- 十幾減9、8、7、6的口算
- 購(gòu)房合同[標(biāo)準(zhǔn)版]
- 基于PLC的煤礦水泵控制系統(tǒng)設(shè)計(jì)設(shè)計(jì)
- 金光修持法(含咒訣指印、步驟、利益說(shuō)明)
- 新國(guó)標(biāo)《出版物上數(shù)字用法》操作要點(diǎn)解析范文
評(píng)論
0/150
提交評(píng)論