版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、西安郵電大學(xué)C 語言課程設(shè)計(jì)報(bào)告題目:小型的電視劇節(jié)目管理系統(tǒng)院系名稱:計(jì)算機(jī)學(xué)院專業(yè)名稱:計(jì)算機(jī)科學(xué)與技術(shù)班級(jí):學(xué)生姓名:學(xué)號(hào)( 8 位):指導(dǎo)教師:設(shè)計(jì)起止時(shí)間: 2012 年 06 月 06 日2012 年 06 月 15 日一 . 設(shè)計(jì)目的1.通過一個(gè)小型的管理系統(tǒng)的程序,使自己對(duì)C 編程的感覺進(jìn)一步加深;2.通過這些程序,使得管理員可以更加方便的管理該系統(tǒng),使得用戶可以更方便的查詢。二 . 設(shè)計(jì)內(nèi)容分為管理員和用戶。1. 管理員:可以實(shí)現(xiàn)電視劇的添加,查看全部信息,刪除,查詢,修改;2. 用戶:可以實(shí)現(xiàn)按上映時(shí)間和類別查詢, 顯示全部信息, 電視劇的由新至舊和由舊至新的排序。三概要設(shè)
2、計(jì)1 功能模塊圖;2 各個(gè)模塊詳細(xì)的功能描述1).管理員模塊:a.添加:管理員創(chuàng)建的新結(jié)點(diǎn)續(xù)到以前結(jié)點(diǎn)的后面,為尾插;b.顯示全部信息:先打開文件,若文件為空,則返回;否則申請(qǐng)新空間,把文件中的數(shù)據(jù)放到新申請(qǐng)的空間中,然后再輸出全部信息;c:查詢:先打開文件,若文件為空,則返回;否則申請(qǐng)新空間,把文件中的數(shù)據(jù)放到新申請(qǐng)的空間中,再輸入要查找的序號(hào),若文件為空或找不到,輸出“查詢錯(cuò)誤”并退出該步;反之輸出查詢到的結(jié)果;d.修改:先打開文件,若文件為空,則返回;否則申請(qǐng)新空間,把文件中的數(shù)據(jù)放到新申請(qǐng)的空間中,再輸入要修改的序號(hào),若找不到該序號(hào)或文件為空,輸出“查詢錯(cuò)誤” ,并退出該步;反之輸入修
3、改后的項(xiàng)目,然后保存文件并輸出新的信息;e:刪除:先打開文件,若文件為空,則返回;否則申請(qǐng)新空間,把文件中的數(shù)據(jù)放到新申請(qǐng)的空間中,再輸入要?jiǎng)h除的序號(hào),若文件為空或找不到,輸出“查詢錯(cuò)誤”,并退出該步;反之把該序號(hào)后面的那個(gè)結(jié)點(diǎn)續(xù)到該序號(hào)前面的那個(gè)結(jié)點(diǎn)后面,就把該序號(hào)對(duì)應(yīng)的結(jié)點(diǎn)刪除成功。2)用戶模塊:a:顯示全部信息:用戶進(jìn)入該步驟后,可以顯示當(dāng)前電視劇節(jié)目的全部信息,包括劇名,導(dǎo)演名,主要演員名,類別,上映時(shí)間,大概內(nèi)容;b:按類別查詢:用戶進(jìn)入該步驟后,首先輸入要查詢的類別,若該文件中沒有相關(guān)信息,系統(tǒng)會(huì)報(bào)錯(cuò),并退出該步;反之輸出查找到的相關(guān)信息;c:按時(shí)間查詢:用戶進(jìn)入該步驟后,首先輸入
4、要查詢的時(shí)間,若該文件中沒有相關(guān)信息,系統(tǒng)會(huì)報(bào)錯(cuò),并退出該步;反之輸出查找到的相關(guān)信息;d:按電視劇由新至舊排列:用戶選擇了該項(xiàng),系統(tǒng)會(huì)輸出由新至舊排列的電視劇節(jié)目的信息;e:按電視劇由舊至新排列:用戶選擇了該項(xiàng),系統(tǒng)會(huì)輸出由舊至新排列的電視劇節(jié)目的信息。四詳細(xì)設(shè)計(jì)1 功能函數(shù)的調(diào)用關(guān)系圖;2 各功能函數(shù)的數(shù)據(jù)流程圖;查詢:刪除:3重點(diǎn)設(shè)計(jì)及編碼。該程序的重點(diǎn)設(shè)計(jì)為排序部分,編碼如下:void paixu1(Ju *(ju.txt,rt);system(cls);if(fp=fopen(ju.txt,rt)=NULL)printf( 讀文件有錯(cuò),按任意鍵退出!);getch();exit(1)
5、;,&p-num,p-name,p-lei,p-dir,p-act,&p-time,p-nei); r-next=p;r=p;r-next=NULL;fclose(fp);p1=n);printf( 序號(hào)劇名類別導(dǎo)演主要演員上映時(shí)間內(nèi)容n);for(f=n,f-num,f-name,f-lei,f-dir,f-act,f-time,f-nei);save2();管理員主菜單函數(shù)void yonghu();用戶主菜單函數(shù)Ju * jianli();建立鏈表void save();把鏈表保存到文件void print();讀取文件并打印輸出Linklist View1();管理員顯示全部函數(shù)voi
6、d search1();按序號(hào)查void gai();修改鏈表的結(jié)點(diǎn)void del();刪除鏈表的結(jié)點(diǎn)void search2();按電視類別查詢void search3();按電視上映時(shí)間查詢Linklist View2();用戶顯示全部函數(shù)void paixu1();按降序排列void paixu2();按升序排列void menu()int n;printf(t*menu*);printf(nnn );printf(tt歡迎進(jìn)入電視劇節(jié)目管理系統(tǒng),請(qǐng)選擇您以何種方式進(jìn)入 !);管理員或用戶登錄printf(nnn);printf(ttt1.Admin( 管理員 )nn);printf(
7、ttt2.yonghu( 用戶 )nn);printf(ttt0.Quit( 退出 )nn);printf(t*);printf(n);主菜單doprintf( 請(qǐng)選擇 (0-2);scanf(%d,&n);while(n2);system(cls);switch(n)case 1:Admin();管理員登錄break;case 2:yonghu();用戶登錄break;case 0:exit(0);退出管理員函數(shù)void Admin()void AdminWelcome();int i=0,p=1;int k;char CPassWord20=12;密碼char CID20=dan;賬戶ch
8、ar ID20;char PassWord20;printf( 您好管理員,請(qǐng)輸入您的賬戶及密碼ENTER 結(jié)束 n);while(inum);printf( 請(qǐng)輸入劇名 :n);scanf(%s,s-name);printf( 請(qǐng)輸入類別 :n);scanf(%s,s-lei);建立主要內(nèi)容的鏈表printf( 請(qǐng)輸入導(dǎo)演名 :n);scanf(%s,s-dir);printf( 請(qǐng)輸入主要演員名 :n);scanf(%s,s-act);printf( 請(qǐng)輸入上映時(shí)間 :n);scanf(%d,&s-time);printf( 請(qǐng)輸入主要內(nèi)容 :n);scanf(%s,s-nei);r-ne
9、xt=s;r=s;尾插printf(conitue?(yn);choice=getche();printf(n);while(choice=y|choice=Y);r-next=NULL;printf( 共錄入 %d 部電視劇 n,count);save(ju.txt,at+)=NULL)printf( 寫文件出錯(cuò),按任意鍵退出);getch();exit(1);for(s=%sn%sn%sn%sn%dn%snn,s-num,s-name,s-lei,s-dir, s-act,s-time,s-nei);printf( 文件保存成功,按任意鍵返回 !); getch();fclose(fp);
10、void print(Linklist (ju.txt,rt)=NULL)printf( 讀文件有錯(cuò),按任意鍵退出);getch();exit(1);,s-num);printf(t 劇名 :);printf(%sn,s-name);printf(t 類別 :);printf(%sn,s-lei);printf(t 導(dǎo)演 :);printf(%sn,s-dir);printf(t 主要演員 :);printf(%sn,s-act);printf(t 上映時(shí)間 :);printf(%dn,s-time);printf(t 內(nèi)容 :);printf(%snn,s-nei);printf(n 文件中
11、信息以正確方式讀出,按任意鍵返回 !); printf(n);getch();Linklist View1(Linklist (ju.txt,rt)=NULL)printf( 讀文件出錯(cuò),按任意鍵退出!);getch();exit(1);t%sn%dn%sn,&s-num,s-name,s-lei,s-dir,s-act,&s-time,s- nei);r-next=s;r=s;尾插r-next=NULL;printf(nntt*讀出的數(shù)據(jù)為 *nn);for(s=,s-num);printf(t 劇名 :);printf(%sn,s-name);printf(t 類別 :);printf(%
12、sn,s-lei);printf(t 導(dǎo)演 :);printf(%sn,s-dir);printf(t 主要演員 :);printf(%sn,s-act);printf(t 上映時(shí)間 :);printf(%dn,s-time);printf(t 內(nèi)容 :);printf(%snn,s-nei);count+;printf( 共讀出 %d 部電視劇的信息 n,count);printf(n 文件中信息以正確方式讀出,按任意鍵返回!);printf(n);getch();fclose(fp);AdminWelcome();return (ju.txt,rt);if(fp=NULL)printf(
13、不能打開此文件,按任意鍵退出!);getch();拿序號(hào)查exit(1);n,&s-num,s-name,s-lei,s-dir,s-act,&s-time,s-nei);r-next=s;r=s;r-next=NULL;s=);return;printf( 請(qǐng)輸入要查詢的序號(hào) (0-%d)n,count); scanf(%d,&x);while(s & s-num!=x)s=s-next;if(s=NULL | s-num!=x)printf( 查詢錯(cuò)誤 n);exit(1);elseprintf( 您查出的結(jié)果為 :n);printf(t 序號(hào) );printf(t%dn,s-num);p
14、rintf(t 劇名 :);printf(%sn,s-name);printf(t 類別 :);printf(%sn,s-lei);printf(t 導(dǎo)演 :);printf(%sn,s-dir);printf(t 主要演員 :);printf(%sn,s-act);printf(t 上映時(shí)間 :);printf(%dn,s-time);printf(t 內(nèi)容 :);printf(%snn,s-nei);getch();fclose(fp);AdminWelcome();void gai(Linklist (ju.txt,rt);if(fp=NULL)printf(不能 打開此 文件,按任 意
15、鍵 退出!);修改結(jié)點(diǎn)getch();exit(1););return;printf( 請(qǐng)輸入要修改的序號(hào) n);scanf(%d,&x);while(s-next!=NULL & s-num!=x)r=s;s=r-next;if(s-num=x)printf( 請(qǐng)輸入修改后的序號(hào) :n);scanf(%d,&s-num);printf( 請(qǐng)輸入修改后的劇名 :n);scanf(%s,s-name);printf( 請(qǐng)輸入修改后的類別 :n);scanf(%s,s-lei);printf( 請(qǐng)輸入修改后的導(dǎo)演 :n);scanf(%s,s-dir);printf( 請(qǐng)輸入修改后的主要演員:n)
16、;scanf(%s,s-act);printf( 請(qǐng)輸入修改后的上映時(shí)間:n);scanf(%d,&s-time);printf( 請(qǐng)輸入修改后的內(nèi)容 :n);scanf(%s,s-nei);system(cls);printf( 修改成功,修改后的結(jié)果為:nn);fp=fopen(ju.txt,wt);if(fp=NULL)printf( 打開文件錯(cuò)誤 !n);for(s=,s-num,s-name,s-lei,s-dir,s-act,s-time,s-nei);printf(t 序號(hào) );printf(t%dn,s-num);printf(t 劇名 :);printf(%sn,s-name
17、);printf(t 類別 :);printf(%sn,s-lei);printf(t 導(dǎo)演 :);printf(%sn,s-dir);printf(t 主要演員 :);printf(%sn,s-act);printf(t 上映時(shí)間 :);printf(%dn,s-time);printf(t 內(nèi)容 :);printf(%snn,s-nei);printf(n 文件中信息以正確方式讀出,按任意鍵返回!);fclose(fp);getch();printf(n);AdminWelcome();elseprintf( 修改失敗 );void del(Linklist (ju.txt,rt);if(
18、fp=NULL)printf( 不能打開此文件,按任意鍵退出!);getch();exit(1);刪除結(jié)點(diǎn),&s-num,s-name,s-lei,s-dir,s-act,&s-time,s-nei); r-next=s;r=s;r-next=NULL;s=);return;printf( 請(qǐng)輸入要?jiǎng)h除的序號(hào) n);scanf(%d,&y);while(s-next!=NULL & s-num!=y)r=s;s=r-next;if(s-num=y)r-next=s-next;printf( 刪除成功 !n);fp=fopen(ju.txt,wt);if(fp=NULL)printf( 文件打開
19、錯(cuò)誤 !);elseprintf( 刪除后的結(jié)果為 :nn);for(s=,s-num,s-name,s-lei,s-dir,s-act,s-time,s-nei);printf(t 序號(hào) );printf(t%dn,s-num);printf(t 劇名 :);printf(%sn,s-name);printf(t 類別 :);printf(%sn,s-lei);printf(t 導(dǎo)演 :);printf(%sn,s-dir);printf(t 主要演員 :);printf(%sn,s-act);printf(t 上映時(shí)間 :);printf(%dn,s-time);printf(t 內(nèi)容 :
20、);printf(%snn,s-nei);printf(n 文件中信息以正確方式讀出,按任意鍵返回!);fclose(fp);printf(n);elseprintf( 刪除失敗 );getch();AdminWelcome();用戶函數(shù)void yonghu()int n;int i=0;Linklist nn);printf(*您好用戶,請(qǐng)選擇您的操作*n);printf(nnn);printf(ttt1. 顯示全部信息 nn);printf(ttt2. 查詢(按類別) nn);printf(ttt3. 查詢(按上映時(shí)間) nn);printf(ttt4. 按降序排 nn);printf(
21、ttt5. 按升序排 nn);printf(ttt0.quitn);printf( 請(qǐng)選擇 0-5n);scanf(%d,&n);system(cls);switch(n)case 1:View2();break;顯示全部case 2:search2(ju.txt,rt)=NULL)printf( 讀文件出錯(cuò),按任意鍵退出!);getch();exit(1);,&s-num,s-name,s-lei,s-dir,s-act,&s-time,s-nei); r-next=s;r=s;尾插r-next=NULL;printf(nntt*用戶讀出的數(shù)據(jù)為 *nn);for(s=,s-num,s-na
22、me,s-lei,s-dir,s-act,s-time,s-nei);printf(%dt%st%st%st%st%dtt%snn,s-num,s-name,s-lei,s-d ir,s-act,s-time,s-nei);print();getch();fclose(fp);yonghu();return (ju.txt,rt);if(fp=NULL)printf( 不能打開此文件,按任意鍵退出 !); getch();exit(1);,&s-num,s-name,s-lei,s-dir,s-act,&s-time,s-nei); r-next=s;r=s;r-next=NULL;s=);r
23、eturn;printf( 請(qǐng)輸入要查詢的類別 n);scanf(%s,l);printf( 您查出的結(jié)果為 :n);for(s=,s-num);printf(t 劇名 :);printf(%sn,s-name);printf(t 類別 :);printf(%sn,s-lei);printf(t 導(dǎo)演 :);printf(%sn,s-dir);printf(t 主要演員 :);printf(%sn,s-act);printf(t 上映時(shí)間 :);printf(%dn,s-time);printf(t 內(nèi)容 :);printf(%snn,s-nei);k=1;if(k!=1)printf( 查詢
24、錯(cuò)誤 !);getch();fclose(fp);yonghu();void search3(Linklist (ju.txt,rt);if(fp=NULL)printf( 不能打開此文件,按任意鍵退出!);getch();拿序號(hào)查exit(1);n,&s-num,s-name,s-lei,s-dir,s-act,&s-time,s-nei); r-next=s;r=s;r-next=NULL;s=);return;printf( 請(qǐng)輸入要查詢的時(shí)間 n);scanf(%d,&a);printf( 您查出的結(jié)果為 :n);for(s=,s-num);printf(t 劇名 :);printf(%sn,s-name);printf(t 類別 :);printf(%sn,s-lei);printf(t 導(dǎo)演 :);pri
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 慶云中學(xué)八年級(jí)上學(xué)期語文9月質(zhì)量監(jiān)測(cè)試卷
- 美容院倒閉顧客退款協(xié)議書(2篇)
- 南京航空航天大學(xué)《電機(jī)與控制元件》2023-2024學(xué)年期末試卷
- 南京工業(yè)大學(xué)浦江學(xué)院《行政組織學(xué)》2021-2022學(xué)年第一學(xué)期期末試卷
- 南京工業(yè)大學(xué)浦江學(xué)院《汽車美容》2023-2024學(xué)年第一學(xué)期期末試卷
- 站房運(yùn)行維護(hù)合同(2篇)
- 南京工業(yè)大學(xué)《數(shù)據(jù)挖掘建模案例分析》2022-2023學(xué)年期末試卷
- 南京工業(yè)大學(xué)《涉外商務(wù)談判》2023-2024學(xué)年第一學(xué)期期末試卷
- 嚴(yán)考促學(xué)安全類初級(jí)復(fù)習(xí)測(cè)試卷附答案
- 租賃中止合同范本
- 事業(yè)單位嫖娼違法寫檢討書
- (新版)云南醫(yī)保練兵理論知識(shí)考試題庫大全-上(選擇題)
- 2024年遼寧職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫必考題
- 中華人民共和國突發(fā)事件應(yīng)對(duì)法課件
- 高校思想政治教育生活化研究的開題報(bào)告
- (高清版)DZT 0346-2020 礦產(chǎn)地質(zhì)勘查規(guī)范 油頁巖、石煤、泥炭
- 企業(yè)計(jì)算機(jī)網(wǎng)絡(luò)維護(hù)專項(xiàng)方案
- 昆明撫仙湖鰭魚灣棋盤山度假娛樂旅游區(qū)總體規(guī)劃方案樣本
- 數(shù)控機(jī)床概述(完整版)
- 量子最優(yōu)化算法在金融業(yè)的應(yīng)用研究報(bào)告
- 國際法-利比亞-馬耳他大陸架劃界案
評(píng)論
0/150
提交評(píng)論