C语言销售管理知识课程设计实验报告_第1页
C语言销售管理知识课程设计实验报告_第2页
C语言销售管理知识课程设计实验报告_第3页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C语言课程设计实验报告一、目的(本次课程设计所涉及并要求掌握的知识点。)用户与商品信息要采用文件存储,因而要提供文件的输入输出操作;实现用户的添加、 修改、删除;商品信息的添加、修改、删除、查找等功能;实现商品浏览功能的实现,需要 实现显示操作;另外还要提供键盘式选择菜单以实现功能选择。二、使用环境(本次上机实践所使用的平台和相关软件。)Microsoft Visual C+三、内容与设计思想(1 设计思路2 主要数据结构3 主要代码结构4 主要代码段分析。)1、设计思路2、主要数据结构/*系统用户结构*/typedef struct SystemUser char userName20; c

2、har password20; int userType; struct SystemUser *n ext; SystemUser;/*服装商品信息*/ typedef struct Products int productId; char productName20; char productType20; char productCompa ny 20; float productPrice; int productCo unt; char memo50; struct Products *n ext;针 Products;/*销售记录信息结构*/ typedef struct Sell

3、 In foRecord int saleId;char userName20; int productId; int sellCo unt;int year;int mon th;int day; char memo50;struct SellInfoRecord *next; SellI nfoRecord;/用户名,主键/用户密码/用户类型(1:管理员;2:店长;3:销售员)/指向下一个用户的指针/商品编号,主键/商品名称/商品型号/商品厂家/商品价格/商品数量/商品附加信息/指向下一个商品的指/销售编号,主键/销售商品的用户名/销售的商品编号/销售数量/销售商品年份/销售商品月份/销售

4、商品日期/销售的附加信息/下一条销售记录3、主要代码结构(一)添加打开文件,从键盘输入要添加的信息,若添加的信息与文件里的信息重复,则调用系统暂停函数,返回界面;若添加的信息在文件里没有找到,则将添加的信息输入到文件,调用系统暂停函数,返回界面(二)查询打开文件,从键盘输入要查询的信息,若在文件里找到要查询的信息,则在 界面输入信息,并调用系统暂停函数,返回界面;若没有找到查询的信息,调用 系统暂停函数,返回界面。(三)删除打开文件,从键盘输入要删除的信息,若在文件里找到要删除的信息存在,则把文件里要删除的那条信息删除掉, 并调用系统暂停函数,返回界面;若没有 找到删除的信息,调用系统暂停函数

5、,返回界面。(四)修改打开文件,从键盘输入要修改的信息,若在文件里找到要修改的信息存在,则按照提示信息依次输入要修改的信息, 写入文件,并调用系统暂停函数,返回 界面;若没有找到修改的信息,调用系统暂停函数,返回界面。4、主要代码段分析/*对系统进行初始化,建立用户记录和商品记录 */void InitSystem() FILE *fp;SystemUser adminUser,bossUser,sellUser;/ 管理员,店长,销售员三个角色信息Products products2;/初始化两件服装商品信息SellInfoRecord sellInfo2;/ 初始化两条销售记录/初始化管理

6、员用户名、密码与类型strcpy(admi nUser.userName,"admi n");strcpy(admi nUser.password,"admi n");admi nUser.userType = ADMIN_USER_TYPE;adm in User. next = NULL;/打开管理员用户信息文件 Admin.txt ,写入信息,并关闭文件fp = fope n("Admi n.txt", "w");fprin tf(fp, "%st%s", admi nUser.userN

7、ame, adm in User.password);fclose(fp);AddUser(&admi nUser);AddUser(&bossUser);AddUser(&sellUser);/添加第一条商品信息strcpy(ductName," 精品男装"); strcpy(ductType,"mOO1");strcpy(productsO.productCompany,"精品服装制造厂");productsO.productPrice = 23.5;p

8、ductCou nt = 100; strcpy(products0.memo,"精品男装,您的第一选择");products。, next = NULL;/添加第二条商品信息strcpy(ductName," 时尚女装"); strcpy(ductType,"w002");strcpy(ductCompany,"时尚服装制造厂");ductPrice = 25.5;productsl.

9、productCou nt = 150; strcpy(products1.memo,"时尚女装,您的第一选择");products1, next = NULL;AddProduct(&products0);AddProduct(&productsl);/添加第一条销售报表记录selll nfo0.day = 16;strcpy(selll nfo0.memo,"测试数据 1");selll nfo0.m on th = 7;selll nfo° .n ext = NULL;selll ductld = 1;se

10、lll nfo0.sellCou nt = 8;strcpy(selll nfo0.userName,"sell");selll nfo0.year = 2008;/添加第二条销售报表记录selll nfo1.day = 17;strcpy(selllnfo1.memo,"测试数据 2");selll nfo1.mo nth = 7;selll nfo1. next = NULL;selll ductld = 2;selll nfo1.sellCou nt = 5;strcpy(selll nfo1.userName,"sell

11、");selll nfo1.year = 2008;AddSelll nfo(&selll nfo0);AddSelll nfo(&selll nfo1);/添加商品信息void ln putA ndAddProduct() Products product;printf("亲爱的%s朋友,你好,请依次输入新商品的信息:n",currentUser);/输入商品名称、型号、制作商、价格、数量、附加信息,并把从键盘输入的值赋值 给结构体变量的商品名称型号、制作商、价格、数量、附加信息printf("商品名称:");sca nf(&

12、quot;%s",ductName);printf("商品型号:");sca nf("%s",ductType); printf("商品制造商:");sca nf("%s",ductCompa ny); printf("商品价格:");sca nf("%f",&ductPrice);printf("商品数量:");sca nf("%d&quo

13、t;,&ductCo un t); printf("商品附加信息:");sca nf("%s",product.memo); product .n ext = NULL;/若成功信息添加到结构体变量product里则提示添加成功if(FUNCTION_SUCCESS = AddProduct (&product)printf("商品信息添加成功!n"); system("pause");/修改商品信息/待修改的商品编号void ModifyProduct() int produ

14、ctId;Products *tmpProduct;printf("亲爱的%s朋友,你好,你现在进入的商品信息修改功能:n",curre ntUser);printf("请输入要修改的商品编号:");sca nf("%d",&productld); /将从键盘接收到的商品编号赋值给变量productIdtmpProduct = pProductHead;if(NULL = tmpProduct) return ;while(NULL != tmpProduct) if(productId = tmpProduct->pr

15、oductld)/若从键盘输入的商品编号与文件中的一致,则修改商品信息商品名称商品型号商品厂家商品价格商品数量、商品附加信息:sn",tmpProduct->memo); F面请对照修改该商品的相应信息:n");%sn",tmpProduct->productName); %sn",tmpProduct->productType);%sn",tmpProduct->productCompa ny); %fn",tmpProduct->productPrice);%dn",tmpProduct-&

16、gt;productCou nt);printf("商品编号%d的商品信息如下:n",productId); printf(" printf(" printf(" printf(" printf(" printf(" printf(" printf("新的商品名称:"); scan f("%s",tmpProduct->productName); printf("新的商品型号:"); scan f("%s",tmpPro

17、duct->productType); printf("新的商品厂家:"); scan f("%s",tmpProduct->productCompa ny); printf("新的商品价格:"); scan f("%f", &tmpProduct->productPrice); printf("新的商品数量:"); scan f("%d", &tmpProduct->productCou nt); printf("新的商品附

18、加信息:"); scan f("%s",tmpProduct->memo); printf("商品信息修改成功!n"); system("pause"); break; ;tmpProduct = tmpProduct- >n ext;/商品删除void DeleteProduct() int productId = 0;Products *tmpProductA,*tmpProductB;printf("亲爱的%s朋友,你好,你现在进入的商品删除功能:n",curre ntUser);pri

19、ntf("请输入你要删除的商品编号:");/tmpProductBsca nf("%d",&productld);tmpProductA = tmpProductB = pProductHead;指向要删除的记录,tmpProductA指向前一条记录if(NULL = tmpProductB) return ;while(NULL != tmpProductB) if(tmpProductB->productld = productId) if(tmpProductB = pProductHead && tmpProduct

20、B->next =NULL) /如果系统只有一条商品信息free(pProductHead);pProductHead = nUlL;printf("商品信息删除成功!n");system("pause");return ;tmpProductA- >n ext = tmpProductB->n ext; if(pProductHead = tmpProductB) pProductHead = tmpProductB->n ext; free(tmpProductB); printf("商品信息删除成功! n"

21、;);system("pause");return ;else tmpProductA = tmpProductB; tmpProductB = tmpProductB->n ext;printf("对不起,不存在该商品编号的信息!");/商品查询void ProductFi nd() Products *tmpProduct;int fin dWay,productld;char productName20;printf("亲爱的%s朋友,你好,你现在进入的商品查询功 能:n",curre ntUser);printf(&qu

22、ot;请选择查询方式:1-按商品编号查询2-按商品名称查询:");sca nf("%d", &fin dWay);tmpProduct = pProductHead;switch(fi ndWay) case 1: printf("请输入查询的商品编号:"); scanf("%d",&productld); /输入要查询的商品编号 while(NULL != tmpProduct) if(productId = tmpProduct->productld) /若输入查询的商品编号与文件中的一致,则输出商

23、品信息printf(" printf(" printf(" printf(" printf(" printf(" printf("你查询的商品编号为%d的商品信息如下:n",productId); 商品名称:sn",tmpProduct->productName);商品型号:sn",tmpProduct->productType);商品厂家:%sn",tmpProduct->productCompany);商品价格:fn",tmpProduct->pr

24、oductPrice); 商品数量:dn",tmpProduct->productCount); 商品附加信息:sn",tmpProduct->memo);system("pause");return ;tmpProduct = tmpProduct ->n ext;printf("对不起,不存在该商品编号的商品!n");system("pause");case 2:printf("请输入查询的商品名称:");scan f("%s",productName)

25、; /输入要查询的商品名称while(NULL != tmpProduct) 商品名称 商品型号 商品厂家 商品价格 商品数量%sn",tmpProduct->productName); %sn",tmpProduct->productType);%sn",tmpProduct->productCompa ny);%fn",tmpProduct->productPrice);%dn",tmpProduct->productCou nt);if(0 strcmp(tmpProduct->productName,

26、productName) /若输入查询的商品名称与文件中的一致,则输出商品信息printf("你要查询的商品名称为 %s的商品信息如下:n",productName);printf("printf("printf("printf("printf("printf("商品附加信息:sn",tmpProduct->memo); system("pause");return ;tmpProduct = tmpProduct ->n ext;printf("对不起,不存在该

27、商品编号的商品!n"); system("pause");default:break; 管理员:admin admin店 长:boss boss销售员:sell sell四、调试过程(1 测试数据设计2 测试结果分析) 初始化用户名与密码<1><z>C3>3自总密吗悭改(一)主界面i产暮Iff :御邂em出.钢 g當j麵示:冃嘗雷鶴辭蘇乱祚輛售报發亠*- -u - 7- rt -和密码admin:為圭岚誉誤;醴轟姦寵备鞘書负销書报責(二)以管理员方式登陆系统,输入正确的用户账号adminil铠 . 甩 一 篥 品昱 荀星 -US左翟.

28、-:I寺“耳“冃国 :如;4<品崗出倉 HQtltJRlJAJl出.'! 頤赭自退噌遇普自巻-P-T- > 5 XJ J 4- 5-曹一员<1<5<1M<5<bMcl灯灯対曽H<1<2<J<4R ft侮SJ.N 去FU - 超 B B F AH I 改建連云面 k1e$.-t;査一工筈 習 矍-=: 3=晤H.上匹tinE._亍亍 ff'-LJ .-.- XX .S :3a若登陆名或密码错误,则提示用户不存在n导娜沁«>|4>1H d I 1 If-1 r :-r_ £1退岀禺统g

29、 能需橐鉀 茂改.芮0贰I-芒謝E務川牡宫赧袤序害匚幣言嵌番卡芝戶L";襁卵進尊理養醱 商詁七二 e-A+C.彰:£-*juU !f胪. ffl歸牡示汨砖报丧为龟刖骗迴塩融直叭4L<i>gI » ”.” "片V吾匡料肓衍牡下=日铤告乐蛊,H生借玉无 心世旦主舜窗<4>nmj$3RM HMMhf MHM" f -.Ul *、r- a .出 * “a =屮i f 4n r.i:匚应&自报表*商昂镇告令很詆争書员业绩很視7 土在 IHJ 址 >豆口乐冼'M醴羽应韵序号进产兀樞选Wu' .i-uii

30、iiB .咛2.-工閔辆密码"nllE 虫輩险止思缸 J XXX9tC1CX*ifl=iS输-%f异笊慕;充违;选择“(2)用户信息管理”,进行用户的增、删、改、查功能枱月=crln i 需虬mS:.停和卫如 勺畑应护珥讶 诂電V讶隊期尸海登陆成功,进入管理员界面头爱时巨理弓卅屯司乱哝也便月本杀给你捋自下面所电咖虹:碣魏豎籠驴辭鱼溉瞰 帶聽薨薛:詠曇臂濃嘯诂告量报轄船 貝业绩删t45>遞回王畀面<G>MESs?t哨输人:一向冷眈对段序号琏订甘段起举;性爱的音畦员dilnWl志,潮血更崔本蜀汝厳闘右卩面所自功能H目耳眶襄僅说«>3?1星囂翌:墮加亠蹩盘

31、亠查询历輕韬>門品性巳有诉俣甘碼总.枣讯丹斥3桶貝掖坯pP【.£5血口王界面-.ma < i .i tF J.+®tesxWHM-W KfcfKWMX* K *K>«WM «<«*»*«*«X*M-|*X1<-irWJi1< M*K>TW?tH1CWK>iWH »l<irMMW« KSSjA A选择“(1 )自身密码修改”,修改管理员密码套爱血 _ it.: 佶息建 'i.: 门須卢肾忌査审.H户苛免爭苗柑用r荷示破茂npfsifEf

32、“临曰二叹匚单诉岀圏苇纂场二血同飪牯宜拥二耳卅讦功爺犬讦:<2>选择“用户信息查看”,查看当前用户信息|请输尺上五血能励遍的肓弓进行功醴戈择:丄酩护鹭如樂如滙輕髄删懿下!Jj),-1 石 苗 1H丿 _ _> 一 -dilii IniEh>占甘wll 请理任茗無旻续 -sinlleIm#若舌 ««11用户类花1口代養筲理员.zK養店长1 g代捕書员) ±2选择“用户信息添加”,添加用户信息衆畫的岂甲社舫词巴志.你目前诳入的是用户信旦管週功能土<1>JJ户唁證占管用亠唔三簣改话唏.X二闖罚龍对鬼为r吿迎讦:工*>r»

33、;w>ww>rMir?rrw»www 叭尸甘叶尸“常叭尸甘叶rtcwiwr*wtcjKwrtciwwiffl 誓爰的管谨皿血讪.请依战输入用户佶息;用戶喀:«|«用戶毘期:"q撕礬Cl心瓚理舅山代衷店长-討气衷龜环:2血白节韻浦杓底恥fife讦烝款龙辛,+选择“用户信息删除”,删除用户芒貴川烂一呷九山山眉忑”常目柚-:入的是毎户倍息昔理及匏= 3用卢倉亘査番C2>J JPJn临迄自二裁奚血 "、嗟谪缶花労请瑞入二我功能电忌的了 H迟行助皑i择:4MjrttM3*1471)1 WMMM ; h*M N h M 押 M m N 建

34、肆黄 H N H 悅辰吋趣员 f 朋苑你孤承现在进入的用户信息删陳 W: 育嗪X飞耳时利坤七wg 亂户信豈出尿更功 诸铀芒兰缨纯.返回管理员界面,选择“(3)商品信息管理”,进行商品的增、删、改、查功能Li-选择“用户信息查看”,查看当前商品信息。加下:i和r'2Lr口口 - -= $0 耐农号T普工氏 杆蝙电型厂g塁 傭商商商壬i舖弓=iu)qn-±j :帖晶另 I;一精品1除制进厂KJ.FHMflP1DHA . 商 QJ -S ?宰 :E谭,根据商品编号及商品名称进行查找。首先,选择“按商“商品信息查找”品编号查询”,若查询的编号存在,则显示查询的信息一鑒T2-i F 1

35、I&tl询下-编佶i 曇a-廨1牖 KPT i i f :尹巧品9£昂-*: H - j萝一戲.ft吓116精虬讐* -冷才的品皐 i啲择入書司出川虽厉订 壬谥耘 jg若杳询的商品编号不存在,则提示信息“对不起,不存在该商品编号的商品”选择“按商品名称查询”,输入正确的商品名称,显示查询信息mOSl精品服装制固21.00000I伽:精品男峯,您的籌一边择-按商品若琲色喳:2鹭真案包蒔品特已U下亠式:L“按厘晶轴号直洶理Q】百h你可l.<7t自君FUDDUDD品匚罟間 SSQSS ":»>?>犀血询褂空.丢養谴 的嘩-<古_匚甘丁丁門

36、却崔 亠=Fr若查询的商品名称不存在,则提示信息“对不起,不存在该商品编号的商品”样爱的孔dnin朋衣皿奸沏珂辺t入的目品看自幼能: 討埠查询近式一按賈昴舊号查询辦品希称鱼询建 黜誕覚希的碉选择“商品信息添加”,添加商品信息希二区諏蠶鉴.土._*嗣舉号箒厂口皆皆Fn吕吕 I的拿常®囂吨醫崗商商商I KK爭常曾商屠雷雷品密选择“商品信息删除”,删除商品1rIBln信信信亠一rrLU 巴1兰丄-.:上一. J >>>>>-> >£1H返回管理员界面,选择“商品报表显示”,进行销售报表功能靡赃楚扎的是绡住挖表琳阔阳;aQ 甲沅 in隹屋屋

37、菜环.-I品愿 乐.烦日上尋S 涉有昂口崔一!回出推 .&H >>>>、> 【茫 1 Z 3 4 S 3- c c c c c C “卫选择“所有商品销售情况”,显示商品信息日W.=.嗚菁Ii ls 1I- ? z nV ft £T vr An I ILIH畐需JM频器舀循电单號F时聲 J二-肯亍亍二匚曷 w£f片一“-百稱喟和印严严疥瑣节争蕭.71:;|可拈,?心 An A 丁 -Jrl!E 扮 t' kF t选择“商品日销售报表”,查看符合条件的销售商品-$tj eHI ffi e-Istj戶仝 吕靑 3H3S-1 1AlI

38、M.j.irL-li;'-._£ 希翦IW昭l-s若查询的信息不符合条件,则显示没有符合条件的记录曙?;亠揆T跆 K FSS 总 日 销 “:MJy - £泮 ¥-Jy l-.Hd - 功丸月=11制- mduntt泸i* 7入入人4i 跖薯非:技 幕网F.洁i? A"ww * u軒f m,当区左巒迫F月月甘世験二一 娶鶴董前男黄曙昏附习加年需坤日凝聲录曲師"3吒_ U!二.*k-r|W m 11邂艷俩:ae»?月站H搭隔吨:軸臺裔& iL17f;-.F-MtsSn血昂*巧:£ 产«畧齡时齣女裝 画

39、吊单:鬲xSWinir选择“销售员销售报表”,查看符合条件的销售商品Ln山:妇I祢现f二堰人的矍t誉岂冃权功誌耶閒:FSS;当前迎擬进俪莒氏销啓娠養显示 算鏗鏗t, M 砸售记苯甘恳加下- 产盒&亠丄 产畑引帛哪品尸耘 百品牛,-Jt.inMiu if黜V if 可:z*« T7)ht3枱井序第2爭至是甲芳订录皆岂如下:产品畧賣吗尚女装 qd-ilt.'ji3.-.nmwwijBft Tn :-Off 11I稱昌时简电月IP日整殳頁譬车 貯匚肖记录*相营总命话-£鋼8»元(三)以店长方式登录系统选择“自身密码修改”,修改店长密码亲爰的店咲j=巨忐”

40、纯使凫也裨4啲拥百下面所巾功能:CD自身密诃协改.省盤聽諜;熬讀呀勰聶奮售量捉花融员业绩拒表 厲退出慕统皓输人二自功能对应的手号呂昔建洋:1囂雅 Min霁矗務黑itn 矗 mu髀ifR 弭!聶口 arsr醫理髯霁writ囂啊 理理!w 蠹囂f stu,弭 囂覚髀 需黑竄 理畀>!髀请動它j跆护巒西=ME趟赛输人称的新商驻bwz證玛儒弋战耐¥诒按二茁按册缰* _店长其他功能(商品信息管理,销售报表显示)与管理员类似(四)以销售员登陆系统苗債雷垃黔"勻詁密却腺嘲|U<5 >52 3主唱瑪<6>'FiH 系游店长功育空自昂畠码際由強両应白思昏

41、隹匕横加.陵狀启询.嫉口蟻观聶显示月蘇曽耘馆售5W1S那帝<5>3壬系蔬帝告贝燮抵百飞.3.<i>ft品浏览晝询,威屈销會<a>g/引昂世窗眛星卜汨爷引賦卫的害艰我心、逼耳壬眄面"朋出乖绻倖 |申_4 葬 土苻 CT!TirTKm(HJBXai.X;M;Ka«ai6 H KU H X UK 務入摆的善或匡户蛍号注“_一 當囁入傑 的秦顷申 户療码怕“丄牯QH怡小* 管冊726息*;1防护 - 册下吕呈加_煤 匸诵茹O.F杜上T.k一爭产杲彷品rn=B民 的次的的商-向商聖& 足喩©思屋屋星 亲话话若销售产品大于库存,则提

42、示销售失败。回駭籍朝鹫骼遵好俶杠入的铝M和功給E肓两严品-§-=1.|、起畀梧1入茁1销客数虽.2圧殍霑咎庶熱睛按任慧泌续销售员商品浏览、查询、及报表查看功能与管理员功能类似五、总结1 设计中遇到的问题及解决过程2 设计中产生的错误及原因分析3 设计体会和收获。六、附录1、原代码#include <stdio.h>/标准输入输出函数#i nclude <win dows.h> /Win dows头文件#include <time.h>/日期和时间头文件#defi ne ADMIN_USER_TYPE 1#defi ne BOSS_USER_TYPE

43、 2#defi ne SELL_USER_TYPE 3#defi ne FUNCTION_FAILED -1#define FUNCTION SUCCESS 0 /女口果函数成功执行,将返回 0/*系统用户结构*/typedef struct SystemUser char userName20;char password20;int userType;/用户类型(1:管理员;struct SystemUser *n ext; SystemUser;/*服装商品信息*/ typedef struct Products int productId; char productName20; cha

44、r productType20; char productCompa ny 20; float productPrice; int productCo unt; char memo50; struct Products *n ext;针 Products;/用户名,主键/用户密码2:店长;3:销售员)/指向下一个用户的指针/*销售记录信息结构*/ typedef struct Sell In foRecord int saleId;char userName20;int productId; int sellCo unt;int year; int mon th;int day; char m

45、emo50;struct SellInfoRecord *next;/商品编号,主键/商品名称/商品型号/商品厂家/商品价格/商品数量/商品附加信息/指向下一个商品的指/销售编号,主键/销售商品的用户名/销售的商品编号/销售数量/销售商品年份/销售商品月份/销售商品日期/销售的附加信息/下一条销售记录 SellI nfoRecord;static char currentUser20; /系统全局变量,保存当前登陆用户名;static int currentUserType;/系统全局变量,保存当前登陆用户的用户类型static SystemUser *pSystemUserHead = NU

46、LL; /保存系统用户信息记录的头指针static Products *pProductHead = NULL; /保存系统商品信息记录的头指针static SellInfoRecord *pSelllnfoHead = NULL;/ 保存系统销售记录的头指 针void InitSystem();II对系统用户信息和商品信息进行初始化II系统欢迎菜单II系统登陆II系统管理员操作菜单II店长操作菜单II销售员操作菜单II修改密码II用户信息管理II用户信息查看II用户信息添加II用户信息修改int AddUser(SystemUser *);int AddProduct(Products *p

47、Pro); int AddSellI nfo(Selll nfoRecord *); void UserExit();void WelcomeMe nu();void SystemLogi n();void Adm in Operati onMenu(); void BossOperati onMenu();void SellOperati onMen u(); void Chan gePassword();void UserMa nage();void UserI nfoView(); void UserI nfoAdd(); void UserI nfoModify();II向用户信息链表

48、中加入用户信息II向商品信息链表中加入商品信息void Userl nfoDelete();/用户信息删除void ProductsMa nage();/产品信息管理void ProductsView();/商品查看void Product Fin d();void In putA ndAddProduct();/输入商品信息并添加void ModifyProduct();/修改商品信息void DeleteProduct();/删除商品信息void ProductsSell();/商品销售void ReportPri nt();/报表显示void ShowAIISellReport();/显

49、示所有商品销售情况void ShowDaySellReport();/显示某日的销售情况void ShowMo nthSellReport();/显示某月的销售情况void ShowEmployeeSellReport();/显示某个销售员的销售情况void ExitSystem();/ 退出登陆系统float getPriceByld(int);/通过商品编号查询商品价格int getProductNameByld(i nt,char *);/通过商品编号查询商品名称int getCountByld(int);/通过商品编号查询商品库存数量void ReduceProductCount(in

50、t,int);/通过商品编号减少商品数量/*对系统进行初始化,建立用户记录和商品记录*/void In itSystem() FILE *fp;SystemUser adm in User,bossUser,sellUser;/管理员,店长,销售员三个角色信息Products products2;/初始化两件服装商品信息SellI nfoRecord sellI nfo2;/初始化两条销售记录/管理员strcpy(admi nUser.userName,"admi n");strcpy(admi nUser.password,"admi n");admi

51、 nUser.userType = ADMIN_USER_TYPE;adm in User. next = NULL;fp = fope n("Admi n.txt", "w");fprin tf(fp, "%st%s", admi nUser.userName, adm in User.password);fclose(fp);/店长strcpy(bossUser.userName,"boss");strcpy(bossUser.password,"boss");bossUser.userTy

52、pe = BOSS_USER_TYPE;bossUser. next = NULL;fp = fope n("Shopkeeper.txt", "w");fpri ntf(fp, "%st%s", bossUser.userName, bossUser.password);fclose(fp);/销售员strcpy(sellUser.userName,"sell");strcpy(sellUser.password,"sell");sellUser.userType = SELL_USER_TY

53、PE;sellUser. next = NULL;fp = fope n("Seller.txt", "w");fprin tf(fp, "%st%s", sellUser.userName, sellUser.password);fclose(fp);AddUser(&admi nUser);AddUser(&bossUser);AddUser(& sellUser);ductld = 1; strcpy(ductName," 精品男装"

54、); strcpy(ductType,"m001");strcpy(ductCompany,"精品服装制造厂");ductPrice = 23.5;ductCou nt = 100;strcpy(products0.memo," 精品男装,您的第一选择"); products。. next = NULL;ductld = 2; strcpy(ductName," 时尚女

55、装"); strcpy(ductType,"w002");strcpy(ductCompany,"时尚服装制造厂");ductPrice = 25.5;ductCou nt = 150;strcpy(products1.memo," 时尚女装,您的第一选择"); products1. next = NULL;AddProduct(&products0);AddProduct(&productsl);sell

56、l nfo0.day = 16;strcpy(selll nfo0.memo,"测试数据 1");selll nfo0.m on th = 7;selll nfo° .n ext = NULL;selll ductld = 1;selll nfo0.sellCou nt = 8;strcpy(selll nfo0.userName,"sell");selll nfo0.year = 2008;selll nfo1.day = 17;strcpy(selllnfo1.memo,"测试数据 2");selll n

57、fo1.mo nth = 7;selll nfo1. next = NULL;selll ductld = 2;selll nfo1.sellCou nt = 5;strcpy(selll nfo1.userName,"sell");selll nfo1.year = 2008;AddSelll nfo(&selll nfo0);AddSelll nfo(&selll nfo1);/*函数功能:向系统用户信息链表中加入用户信息*/int AddUser(SystemUser *pUser) SystemUser *pSystemUser,*tempSystemUser;tempSystemUser = pSystemUserHead;while(NULL != tempSystemUser) if(0 =strcmp(tempSystemUser->userName,pUser->userName)printf("对不起,你要添加的用户已经存在");return FUNCTION_FAILED;tempSystemUser = tempSystemUser- >n ext;pSystemUser = (SystemUser *) malloc(sizeof

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论