客戶消費(fèi)積分管理系統(tǒng)課程設(shè)計(jì)_第1頁
客戶消費(fèi)積分管理系統(tǒng)課程設(shè)計(jì)_第2頁
客戶消費(fèi)積分管理系統(tǒng)課程設(shè)計(jì)_第3頁
客戶消費(fèi)積分管理系統(tǒng)課程設(shè)計(jì)_第4頁
客戶消費(fèi)積分管理系統(tǒng)課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告設(shè)計(jì)題目:專業(yè)一軟件工程班級(jí)0902班學(xué)生周雷學(xué)號(hào)09430225指導(dǎo)教師張雪21.客戶消費(fèi)積分管理系統(tǒng)問題描述:針對(duì)客戶的消費(fèi)情況,進(jìn)行客戶管理,根據(jù)客戶的消費(fèi)積分對(duì)客戶實(shí)施不同程度的打折優(yōu)惠。1 .采用一定存儲(chǔ)結(jié)構(gòu)進(jìn)行客戶信息存儲(chǔ)。2 .對(duì)客戶信息可以修改、刪除、添加。3 .能夠根據(jù)消費(fèi)情況進(jìn)行客戶積分計(jì)算。4 .根據(jù)積分情況實(shí)行不同程度的打折優(yōu)惠。1 .本程序?qū)τ诳蛻粝M(fèi)積分管理系統(tǒng)利用線性表的鏈表存儲(chǔ)方式,使用結(jié)構(gòu)體指針將每一個(gè)用戶聯(lián)系起來。使用結(jié)構(gòu)體指針的鏈表動(dòng)態(tài)鏈接形式將便于客戶的封裝,節(jié)省空間,便于插入和刪除。2 .程序中設(shè)計(jì)了添加用戶查找用戶修改用戶刪除用戶

2、統(tǒng)計(jì)客戶數(shù)量的功能。3 .添加用戶:函數(shù)voidGetelem(cnode*head);添加用戶中,采用結(jié)構(gòu)體將每個(gè)用戶的信息封裝,其中包括用戶姓名name、用戶省份證號(hào)ID、用戶消費(fèi)金額consume積分integer的信息。輸入一個(gè)客戶信息后再開辟新的節(jié)點(diǎn)連接。開一個(gè)空間加一個(gè)用戶可以節(jié)省空間,解決實(shí)現(xiàn)開辟的空間不夠的問題。4.voidSearch(cnode*head,charID口);查找用戶利用指針一個(gè)一個(gè)用戶比對(duì)信息知道,直到找到正確信息并顯示。5voidAmend(cnode*head,charID口);查找并顯示然后修改。6voidDelete(cnode*head,charI

3、D口);查找顯示并刪除。7voidShowall(cnode*head);遍歷鏈表并顯示客戶。8voidcount(cnode*head);遍歷統(tǒng)計(jì)客戶數(shù)量顯示9doubledisplay_discount(doubleinteger);計(jì)算客戶折扣,每次顯示用戶信息調(diào)用一次保證客戶為最新打折信息。主函數(shù)主菜單添加用戶查找用戶修改用戶刪除用戶統(tǒng)計(jì)客戶數(shù)量退出。各個(gè)函數(shù)通過調(diào)用頭結(jié)點(diǎn)連接。4.功能模塊詳細(xì)設(shè)計(jì)、運(yùn)行結(jié)果??蛻翡┵M(fèi)積分管理系統(tǒng)客戶消卷枳分管理系統(tǒng)=2主菜單,1添加客戶-2支找客戶«3修改客戶 4瞬客戶 S顯示客戶«$統(tǒng)計(jì)客戶主菜單1添加客戶2查找客戶3修改客戶4

4、刪除客戶5顯示客戶6統(tǒng)計(jì)客戶7退出*折<18XJ4擇OU<1有,選zhe苴赤的,證位金您名名H貨甘入:0謠.B更入手:7酒希黑箱如34秫12新B123456739123456789謫輸入您的選擇J.23.-t.5,652調(diào)輸入您邊我客戶的匆份證號(hào)“234S6?«912?45678955名*zhoulcl岳份證號(hào);123-156789123-IS6789消拈45612.MM枳分:45612WMSS折扣折客戶消費(fèi)枳分管”系統(tǒng)生菜中»游加客戶2位找客戶5修改客戶*»»客戶5顯示客戶6統(tǒng)Vt客戶7退出謂輸入您的選擇2.3,4,5.6=3客Q消費(fèi)積分管

5、理系統(tǒng)主菜單«1添加客戶«2會(huì)找客戶 3脩改客戶 4部徐客戶 5顯示名戶 6統(tǒng)計(jì)名戶 7退出通入傷修改存戶的叁份證號(hào)£17:14"”2:14“/119國(guó)備,xhoula1分毋證號(hào).1234567891234567S9泊野.45612.00fRjTs4S6.120000加扣e.近款通修你技修改的1、婚.“叁份訕5.3.洎封金血31 .攝短以和白叁.2.£羽上班在后用“潘選征以遵箱入旗加會(huì)Rb6987s46尊力ehuale1、號(hào)電證號(hào),1234S67891234S6789殆爭(zhēng).少(9,1/4««折扣e.nif請(qǐng)植入打的選擇2,3

6、.4.S.6:4輸入次2曼都陳的客戶的身份證號(hào),1234b67891234S6789姓有1z)wulei身電證號(hào):123456789123456789濟(jì)費(fèi)7W3iS8.ee枳分:7S3”.581*08耨瑞京撤?1、渤定.2、取消.請(qǐng)謫選南1制除成的!客戶消費(fèi)積分哲理系統(tǒng)客戶消費(fèi)積分首理系統(tǒng)“主菜單*1添加客戶-2查找客戶, 3修改客戶* 4刪除客戶. 5顯示客戶”xG統(tǒng)計(jì)客戶X7退出M*M請(qǐng)輸入您的選擇1,2,3,4,5,6:5X±-Stzboule1身份證弓,123456789123456V89th?ji7033158.00棋分:xaai.srhhhm折扣折主菜單1添加客戶2查找客

7、戶3修改客戶4邢賒客戶5顯示客戶6統(tǒng)討客戶7退出請(qǐng)輸入您的選擇和2,3,4,5.6:6現(xiàn)有客戶數(shù)量為1位?源代碼:#include"stdio.h"#include"stdlib.h"#include"string.h"typedefstructcnodecharname20;charID20;doubleconsume;doubleinteger;structcnode*next;cnode;voidInitstack(cnode*&head)/*初始化鏈表*/head=(cnode*)malloc(sizeof(cnode

8、);/開辟節(jié)點(diǎn)空間head->next=NULL;voidGetelem(cnode*head);voidSearch(cnode*head,charID);voidAmend(cnode*head,charID);voidDelete(cnode*head,charID);voidShowall(cnode*head);voidcount(cnode*head);doubledisplay_discount(doubleinteger);voidmain()cnode*head;intchoice;chary20;Initstack(head);doprintf("n&quo

9、t;);printf("客戶消費(fèi)積分管理系統(tǒng)n'n");printf("*);printf("n*n");printf("n*土菜單*n");printf("n*1添加客戶*n");printf("n*2查找客戶*n");printf("n*3修改客戶*n");printf("n*4刪除客戶*n");printf("n*5顯示客戶*n");printf("n*6統(tǒng)計(jì)客戶*n");printf(&qu

10、ot;n*7退出*n");printf("n*n");printf("*);printf("n請(qǐng)輸入您的選擇(1,2,3,4,5,6):");scanf("%d”,&choice);if(choice=1)添加Getelem(head);elseif(choice=2)printf("n請(qǐng)輸入您查找客戶的身份證號(hào):”);scanf("%s",y);while(strlen(y)!=18)printf("身份證號(hào)碼位數(shù)有誤請(qǐng)重新輸入(18位):”);scanf("%s&

11、quot;,y);Search(head,y);查找elseif(choice=3)printf("n請(qǐng)輸入您想修改客戶的身份證號(hào):");scanf("%s",y);while(strlen(y)!=18)printf("身份證號(hào)碼位數(shù)有誤請(qǐng)重新輸入(18位):”);scanf("%s",y);Amend(head,y);修改elseif(choice=4)printf("n");printf("請(qǐng)輸入你想要?jiǎng)h除的客戶的身份證號(hào):");scanf("%s",y);D

12、elete(head,y);刪除elseif(choice=5)printf("n");Showall(head);顯示elseif(choice=6)printf("n");count(head);統(tǒng)計(jì)elseif(choice=7)exit(1);while(choice<=7);voidGetelem(cnode*head)添加客戶函數(shù)以頭節(jié)點(diǎn)為參數(shù)cnode*p;doubley;p=(cnode*)malloc(sizeof(cnode);/*申請(qǐng)空的節(jié)點(diǎn)空間*/printf(”請(qǐng)輸入姓名:");scanf("%s”,&

13、amp;p->name);printf(”請(qǐng)輸入身份證號(hào)(18位):”);scanf("%s”,&p->ID);while(strlen(p->ID)!=18)printf("身份證號(hào)碼位數(shù)有誤請(qǐng)重新輸入(18位):”);scanf("%s”,&p->ID);printf(“請(qǐng)輸入消費(fèi)金額:");scanf("%lf”,&p->consume);p->integer=p->consume/100;y=display_discount(p->integer);調(diào)用函數(shù)計(jì)算折扣

14、printf("折扣:");printf("%.1lf',y);printf("折門”);p->next=head->next;head->next=p;voidSearch(cnode*head,charID口)cnode*p;doubley;p=head;if(p->next=NULL)printf("沒有客戶!n");elsewhile(p->next!=NULL)p=p->next;if(strcmp(ID,p->ID)=0)printf("姓名:");pr

15、intf("%sn",p->name);printf("身份證號(hào):");printf("%sn",p->ID);printf("消費(fèi):");printf("%.2lfn",p->consume);printf("積分:");printf("%lfn",p->integer);y=display_discount(p->integer);printf("折扣:");printf("%.1lf&quo

16、t;,y);printf("折舊");voidAmend(cnode*head,charID)cnode*p;doubley,z;intchoose,x;p=head;if(p->next=NULL)printf("沒有客戶!n");elsewhile(p->next!=NULL)p=p->next;if(strcmp(ID,p->ID)=0)printf("姓名:");printf("%sn",p->name);printf("身份證號(hào):");printf(&qu

17、ot;%sn",p->ID);printf("消費(fèi):");printf("%.2lfn",p->consume);printf("積分:");判斷身份證號(hào)是否相同/修改客戶函數(shù)判斷身份證號(hào)是否相同printf("%lfn",p->integer);y=display_discount(p->integer);printf("折扣:");printf("%.1lf",y);printf("折n");printf("

18、請(qǐng)選擇你要修改的1、姓名。2、身份證號(hào)。3、消費(fèi)金額。");scanf("%d”,&choose);if(choose=1)printf("請(qǐng)輸入修改后姓名;");scanf("%s”,&p->name);if(choose=2)printf("請(qǐng)輸入修改后的身份證號(hào):");scanf("%s”,&p->ID);while(strlen(p->ID)!=18)printf("身份證號(hào)碼位數(shù)有誤請(qǐng)重新輸入(18位):”);scanf("%s”,&p

19、->ID);if(choose=3)printf("1.覆蓋以前消費(fèi)、2.續(xù)加上現(xiàn)在費(fèi)用!!請(qǐng)選擇:");scanf("%d",&x);if(x=1)printf("請(qǐng)輸入修改后的消費(fèi):");scanf("%lf”,&p->consume);elseprintf(”請(qǐng)輸入續(xù)加金額:");scanf("%lf",&z);p->consume+=z;printf("姓名:");printf("%sn”,p->name);p

20、rintf("身份證號(hào):");printf("%sn",p->ID);printf("消費(fèi):");printf("%.2lfn",p->consume);p->integer=p->consume/100;printf("積分:");printf("%lfn",p->integer);y=display_discount(p->integer);printf("折扣:");printf("%.1lf"

21、,y);printf("折n");voidDelete(cnode*head,charID口)刪除客戶函數(shù)cnode*p;intx;doubley;p=head;if(p->next=NULL)printf("沒有客戶!n");elsewhile(p->next!=NULL)head=p;p=p->next;if(strcmp(ID,p->ID)=0)判斷身份證號(hào)是否相同printf("姓名:");printf("%sn”,p->name);printf("身份證號(hào):");p

22、rintf("%sn",p->ID);printf("消費(fèi):");printf("%.2lfn",p->consume);printf("積分:");printf("%lfn",p->integer);y=display_discount(p->integer);printf("折扣:");printf("%.1lf",y);printf("折門”);printf("你確認(rèn)刪除?1、確定。2、取消。請(qǐng)請(qǐng)選擇:&q

23、uot;);scanf("%d",&x);if(x=1)head->next=p->next;printf("刪除成功!");elseprintf("刪除失敗!");voidShowall(cnode*head)顯示所有客戶函數(shù)cnode*p;doubley;p=head;if(p->next=NULL)printf("沒有客戶!n");elsewhile(p->next!=NULL)p=p->next;printf("姓名:");printf("%sn”,p->name);printf("身份證號(hào):");printf("%sn",p->ID);printf("消費(fèi):");printf("%.2lfn",

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論