![雜志訂閱管理系統(tǒng)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/5eddc166-3e8d-4232-897b-4377c9fe5975/5eddc166-3e8d-4232-897b-4377c9fe59751.gif)
![雜志訂閱管理系統(tǒng)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/5eddc166-3e8d-4232-897b-4377c9fe5975/5eddc166-3e8d-4232-897b-4377c9fe59752.gif)
![雜志訂閱管理系統(tǒng)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/5eddc166-3e8d-4232-897b-4377c9fe5975/5eddc166-3e8d-4232-897b-4377c9fe59753.gif)
![雜志訂閱管理系統(tǒng)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/5eddc166-3e8d-4232-897b-4377c9fe5975/5eddc166-3e8d-4232-897b-4377c9fe59754.gif)
![雜志訂閱管理系統(tǒng)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/5eddc166-3e8d-4232-897b-4377c9fe5975/5eddc166-3e8d-4232-897b-4377c9fe59755.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、 說明書 設(shè)計題目:雜志訂閱管理系統(tǒng) 目錄:1.設(shè)計任務(wù)-12.正 文-2 (1).系統(tǒng)模塊圖-3 (2).模塊說明-3 (3).用戶使用說明-3 (4).測試結(jié)果-33.設(shè) 計 小 結(jié)-94.附錄-10 一設(shè)計任務(wù)1、需求分析:訂戶的信息要用文件存儲, 所以要提供文件的輸入輸出操作; 要實現(xiàn)增加新訂戶的功能, 所以要提供文件的添加操作;要實現(xiàn)對訂戶文件的查詢,所以要提供文件的查找操作;要刪 除已到期的訂戶記錄, 所以要提供文件的刪除操作; 要統(tǒng)計本期雜志訂戶數(shù)并打印運算結(jié)果, 所以要提供統(tǒng)計和顯示操作;另外還要提供鍵盤式選擇菜單以實現(xiàn)功能選擇。 2、總體設(shè)計:該管理軟件被設(shè)計為數(shù)據(jù)添加模塊、
2、數(shù)據(jù)刪除模塊和數(shù)據(jù)統(tǒng)計模塊。 3、詳細(xì)設(shè)計 數(shù)據(jù)結(jié)構(gòu)選擇結(jié)構(gòu)體: struct magazinechar name10;/姓名char sex6;/性別char address10;/地址char tel11;/電話float price;/單價int amount;/訂閱數(shù)量char deadline10;/截止日期mag; /訂戶信息結(jié)構(gòu)體 (1)數(shù)據(jù)添加模塊 用追加的方式采用 fwrite 或 fprintf 把新增訂戶信息寫入訂戶信息文件。 (2)數(shù)據(jù)刪除模塊 采用基本的查找算法,查找訂戶信息文件,比較當(dāng)天日期和訂閱期限,如果到期,則刪 除該訂戶記錄。刪除方法:如果判斷該條訂戶信息要刪
3、除,則不再把該條信息寫入文件,繼續(xù)讀下一條訂戶信息。 (3)數(shù)據(jù)統(tǒng)計模塊 對本期雜志訂戶數(shù)的統(tǒng)計,就是讀文件,輸出訂戶名、訂閱數(shù)、單價,并計算金額(單價*訂閱數(shù))。可以定義變量統(tǒng)計訂戶數(shù)、訂閱數(shù)和總金額,最后輸出。 二、正文1.系統(tǒng)模塊圖 雜志訂閱管理系統(tǒng)雜 志 訂 閱 管 理 系 統(tǒng)增加刪除統(tǒng)計查找退出修改2模塊說明(1).主函數(shù):顯示封面和菜單;(2). 增加模塊:追加新訂戶信息到文件;(3).刪除模塊:將當(dāng)天日期及以前的用戶的信息從文件中刪除;(4).統(tǒng)計模塊:統(tǒng)計所有訂戶的訂閱數(shù)量、訂閱單價等信息 (5).查詢模塊:查看訂戶的詳細(xì)信息,若訂戶的信息有所變更,下設(shè)更改功能 (包含修改功能
4、)。(6).退出模塊:主函數(shù)中。3.用戶使用說明源程序需用visual C+運行。其它按系統(tǒng)說明操作。4.測試結(jié)果 封面和主菜單添加模塊1.第一次添加界面:2.第一次以后添加界面:刪除模塊統(tǒng)計模塊查詢模塊修改模塊(在查詢結(jié)束后插入修改功能)修改界面退出模塊主函數(shù)源程序圖三.設(shè)計小結(jié) 我們學(xué)習(xí)C語言課程設(shè)計的主要目的是為了了解和熟悉C語言的編程。學(xué)習(xí)C語言要經(jīng)過一個“理論實踐在理論在實踐”的過程。而學(xué)習(xí)C語言課程設(shè)計就是要我們進行實踐,從中發(fā)現(xiàn)問題,解決問題,提高我們運用C語言的能力。是我們能夠運用C語言解決一些問題。通過不斷的編程,熟能生巧,是我們的理論學(xué)習(xí)也有了實踐基礎(chǔ),學(xué)習(xí)理論知識就較為容
5、易一些,然后再通過實踐不斷的提高,如此良性循環(huán)就能是我們的C語言編程能力更上一成樓。參考文獻(xiàn)1。譚浩強。C程序設(shè)計(第二版)。北京。清華大學(xué)出版社,19992。譚浩強。張基溫。C語言程序設(shè)計(第三版)。北京。高等教育出版社,2006.83。譚浩強。C程序設(shè)計(第三版)。北京。清華大學(xué)出版社,2006 四附錄#include"stdio.h"#include"stdlib.h"#include"string.h"#define N 10struct magazinechar name10;char sex6;char address10
6、;char tel11;float price;int amount;char deadline10;struct magazine mag;int n=0;/*用戶計數(shù)器*/int tag=0;/*未過期的用戶計數(shù)器*/void insert()/*增訂新用戶*/FILE *fp;char ch,*filename;filename = "E:magazine.txt"if(0 = n)if(NULL=(fp=fopen(filename,"w")printf("此文件不存在!n");exit(0);else if(NULL=(fp
7、=fopen(filename,"a")printf("此文件不存在!n");exit(0);doif(n<N)printf("請輸入姓名:");gets(); printf("請輸入性別:");gets(mag.sex); printf("請輸入地址:");gets(mag.address); printf("請輸入電話號碼:");gets(mag.tel); printf("請輸入訂閱期限:");gets(mag.deadline
8、); printf("請輸入雜志單價:");scanf("%f",&mag.price); printf("請輸入訂閱數(shù):");scanf("%d",&mag.amount); fwrite(&mag,sizeof(struct magazine),1,fp); n+;else printf("用戶已滿!n");getchar();printf("n是否還有新訂戶?n");scanf("%c",&ch);getchar();
9、system("cls");while('y'=ch | 'Y'=ch);fclose(fp);system("pause");void del()/*刪除過期用戶*/FILE *fp; struct magazine magzN;char datatime8,*filename;int m,i=0;filename = "E:magazine.txt"if(fp=fopen(filename,"r")=NULL)printf("此文件不存在");exit(0);
10、while(fread(&mag,sizeof(struct magazine),1,fp)=1) magztag=mag;tag+;fclose(fp);printf("請輸入當(dāng)天日期:");gets(datatime);fp=fopen(filename,"w");for(i=0;i<tag;i+)m=strcmp(magzi.deadline,datatime);if(m<=0)continue;fwrite(&magzi,sizeof(struct magazine),1,fp);fclose(fp);system(&
11、quot;pause");void total()/*統(tǒng)計本期雜志訂戶數(shù)*/FILE *fp;float totalprice;int totalamount=0;float price1;float sum=0.0; if(fp=fopen("E:magazine.txt","r")=NULL)printf("此文件不存在");exit(0);printf("訂戶名t訂閱數(shù)t單價t金額n");while(fread(&mag,sizeof(struct magazine),1,fp)=1)tot
12、alamount+=mag.amount;price1=mag.price;totalprice=mag.amount*mag.price;sum+=totalprice;printf("%st%dt%3.2ft%3.2fn",,mag.amount,mag.price,totalprice);printf("合計t%dt%3.2ft%3.2fn",totalamount,price1,sum);fclose(fp);system("pause");void scan()/查詢與修改模塊system("cls
13、");int i=0,j,y;char scanname10,*filename;filename = "E:magazine.txt" FILE *fp;struct magazine *magzN; fp=fopen(filename,"r");if(fp=fopen(filename,"r")=NULL)printf("此文件不存在");exit(0); for(j=0;fread(&mag,sizeof(struct magazine),1,fp);j+) magzj=(struct ma
14、gazine *)malloc(sizeof(struct magazine); * magzj=mag;fclose(fp); printf("輸入要查詢?nèi)藛T的姓名:"); scanf("%s",scanname);fp=fopen(filename,"w");for(i=0;i<j;i+) if(strcmp(magzi->name,scanname)=0) printf("姓名:%sn",magzi->name);printf("性別:%sn",magzi->sex
15、); printf("地址:%sn",magzi->address); printf("電話:%sn",magzi->tel); printf("單價:%fn",magzi->price); printf("訂閱數(shù)量:%dn",magzi->amount); printf("訂閱期限:%sn",magzi->deadline);printf("是否要修改'1'是,'0'否:n");scanf("%d&qu
16、ot;,&y);if(y)system("cls");printf("請輸入姓名:");scanf("%s",magzi->name); printf("請輸入性別:");scanf("%s",magzi->sex); printf("請輸入地址:");scanf("%s",magzi->address); printf("請輸入電話號碼:");scanf("%s",magzi->te
17、l); printf("請輸入訂閱期限:");scanf("%s",magzi->deadline); printf("請輸入雜志單價:");scanf("%f",&magzi->price); printf("請輸入訂閱數(shù):");scanf("%d",&magzi->amount);fwrite(magzi,sizeof(struct magazine),1,fp);continue;fwrite(magzi,sizeof(struct m
18、agazine),1,fp);continue;fwrite(magzi,sizeof(struct magazine),1,fp); fclose(fp); system("pause");void main()int ch;char ch1;system("color 5f");do printf(" n");printf(" n");printf(" n");printf(" |n");printf(" | C語言課程設(shè)計 |n");printf(" | |n");printf(" | 雜志訂閱管理系統(tǒng)設(shè)計 |n");printf(" |-|n");printf(" |-|n");printf(" | 制作人:阮航 制作日期:2011.11.21 |n");printf(" |* 主菜單 *|n");printf(" |-|n");printf(
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 供貨合同范例文庫
- 全屋定制家具合同范本封面
- 2025年度智慧社區(qū)物業(yè)服務(wù)合同終止模板
- 光伏抵押合同范例
- 冷凝設(shè)備銷售合同范例
- 產(chǎn)品服務(wù)代理 合同范本
- office格式合同范例
- 會展物料合同范本
- 產(chǎn)權(quán)分割商鋪銷售合同范本
- 2025年度教育節(jié)目制作與版權(quán)轉(zhuǎn)讓合同
- 特種設(shè)備及重要設(shè)備安全管理制度
- 《自主神經(jīng)系統(tǒng)》課件
- 2025集團公司內(nèi)部借款合同范本
- 遼寧省名校聯(lián)盟2025屆高三上學(xué)期1月份聯(lián)合考試語文試題(含答案)
- 2025年山西地質(zhì)集團社會招聘高頻重點提升(共500題)附帶答案詳解
- 2024-2025學(xué)年遼寧省沈陽市沈河區(qū)七年級(上)期末英語試卷(含答案)
- 前牙即刻種植的臨床應(yīng)用
- 2024-2025學(xué)年初中七年級上學(xué)期數(shù)學(xué)期末綜合卷(人教版)含答案
- 體育活動策劃與組織課件
- 公司違規(guī)違紀(jì)連帶處罰制度模版(2篇)
- 2025屆高考物理二輪總復(fù)習(xí)第一編專題2能量與動量第1講動能定理機械能守恒定律功能關(guān)系的應(yīng)用課件
評論
0/150
提交評論