C语言专业课程设计商品销售标准管理系统_第1页
C语言专业课程设计商品销售标准管理系统_第2页
C语言专业课程设计商品销售标准管理系统_第3页
C语言专业课程设计商品销售标准管理系统_第4页
C语言专业课程设计商品销售标准管理系统_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

商品销售管理系统目录需求分析......................................2概要设计......................................2具体设计......................................4调试分析......................................14用户手册.....................................14测试数据.....................................15附录.........................................18—1—一、需求分析商品销售管理程序商品信息:商品编号、商品名称、商品类别(一般电视机、DVD、带DVD电视机,带DVD电视机售价为一般电视机和DVD单价之和80%)、商品进货价格、商品销售价格、商品数量、供给商名称等。统计每一次销售商品数量和价格,并提供对已售出商品价格、数量进行统计、排序功效,但许可用户退商品。(要求:1.源文件采取多文件工程结构2.数据存放采取文件形式3.标准C输入输出4.功效完善,合适注释,5.相关文件内容需要自学)概要设计(一)按系统分析功效要求将系统划分为以下多个关键功效模块:1、文件管理文件打开、关闭:对于刚输入或进行操作后商品信息,在建立新商品库存量后,能够把其保留在一个文件中,并对该文件可进行打开和关闭操作。2、进出货管理(1)商品进货:输入数据后商品信息能自动更新进行添加(2)商品销售:输入数据后商品信息能自动更新进行降低3、商品数据管理(1)增加/删除商品:添加或删除某条商品信息(2)修改商品信息:对某条商品信息进行修改4、浏览商品信息管理(1)查询商品信息:可分别按商品编号、名称、类别或需要进货商品查询(2)排序商品信息:可按商品编号、名称、类别分别排排序(3)浏览商品信息:可浏览输入、查询或排序后数据。(二)本程序结构(1)结构体设计structgoods{longintnum;charname[20];charsort[20];longintcount;longintprice;}goods[200];(2)各功效函数设计:voidinput()/*功效1:输入商品信息*/—2—voidsequence()/*功效2:排序商品信息*/voidpurchase()/*功效3:进货商品信息*/voidsell()/*功效4:销售商品信息*/voidedit()/*功效5:添加或删除商品信息*/voidcorrect()/*功效6:修改商品信息*/voidsearch()/*功效7:查询商品信息*/voidscan()/*功效8:浏览商品信息*/voidreserve()/*功效9:保留文件*/voidquit()/*退出系统*/主函数设计:voidmain(){voidinput();voidsequence();voidpurchase();voidsell();voidedit();voidcorrect();voidsearch();voidscan();voidreserve();lp:for(i=0;i<1;i++)scanf("%d",&k);system("cls");switch(k)/*用switch语句实现功效选择*/system("cls");/*清屏*/gotolp;/*返回主界面*/}三、具体设计(1)各功效函数:voidinput()/*功效1:输入商品信息*/{printf("\n请输入需要建立新库存商品种类数量:");scanf("%d",&n);system("cls");printf("\n…………………\n");for(i=0;i<n;i++)/*用循环实现输入n个商品*/{ printf("\n\t*请输入商品编号:"); scanf("%ld",&goods[i].num); printf("\n\t请输入商品名称:");—3— scanf("%s",goods[i].name); printf("\n\t请输入商品种类:"); scanf("%s",goods[i].sort); printf("\n\t请输入商品数量:"); scanf("%d",&goods[i].count); printf("\n\t请输入商品单价:"); scanf("%d",&goods[i].price);printf("\n…………………\n");} printf("\tPleasepressanykeytocontinue:"); getch(); return;/*返回主界面*/ }voidsequence()/*功效2:排序商品信息*/{longtemp;charp1[30],p2[30];for(k=0;k<n-1;k++)/*(1):按编号排序*/for(i=0;i<n-k-1;i++)/*用起泡法排序*/if(goods[i].num>goods[i+1].num)/*按编号由小到大排序*/{temp=goods[i].num;goods[i].num=goods[i+1].num;goods[i+1].num=temp;strcpy(p1,goods[i].name);strcpy(goods[i].name,goods[i+1].name);strcpy(goods[i+1].name,p1);strcpy(p2,goods[i].sort);strcpy(goods[i].sort,goods[i+1].sort);strcpy(goods[i+1].sort,p2);}printf("--------------------------------------------------------------------------------\n");printf("\n\t\t按商品编号排序后商品信息\n\n");printf("\t商品编号商品名称商品类别商品数量商品单价\n");/*输出排序后商品信息*/ for(i=0;i<n;i++){ printf("\t%5ld%5s%5s%5ld%5ld\n",goods[i].num,goods[i].name,goods[i].sort,goods[i].count,goods[i].price);—4—}for(k=0;k<n-1;k++)/*(2):按商品名称排序*/for(i=0;i<n-k-1;i++)if(strcmp(goods[i].name,goods[i+1].name)>0){ strcpy(p1,goods[i].name); strcpy(goods[i].name,goods[i+1].name); strcpy(goods[i+1].name,p1); temp=goods[i].num; goods[i].num=goods[i+1].num; goods[i+1].num=temp; strcpy(p2,goods[i].sort); strcpy(goods[i].sort,goods[i+1].sort); strcpy(goods[i+1].sort,p2);}printf("--------------------------------------------------------------------------------\n");printf("\n\t\t按商品名称排序后商品信息\n");printf("\n\t商品名称商品编号商品类别商品数量商品单价\n");/*输出排序后商品信息*/for(i=0;i<n;i++){ printf("\t%5s%5ld%5s%5ld%5ld\n",goods[i].name,goods[i].num,goods[i].sort,goods[i].count,goods[i].price);}for(k=0;k<n-1;k++)/*(3):按商品类别排序*/for(i=0;i<n-k-1;i++)/*用起泡法排序*/if(strcmp(goods[i].sort,goods[i+1].sort)>0){strcpy(p2,goods[i].sort);strcpy(goods[i].sort,goods[i+1].sort);strcpy(goods[i+1].sort,p2);temp=goods[i].num;goods[i].num=goods[i+1].num;goods[i+1].num=temp;strcpy(p1,goods[i].name);strcpy(goods[i].name,goods[i+1].name);strcpy(goods[i+1].name,p1);}printf("-------------------------------------------------------------—5—-------------------");printf("\n\t\t按商品类别排序后商品信息\n\n");printf("\t商品类别商品编号商品名称商品数量商品单价\n");/*输出排序后商品信息*/for(i=0;i<n;i++){ printf("\t%5s%5ld%5s%5ld%5ld\n",goods[i].sort,goods[i].num,goods[i].name,goods[i].count,goods[i].price);}printf("--------------------------------------------------------------------------------");printf("pleasepressanykeytocontinue:");getch();return;/*返回主界面*/}voidpurchase()/*功效3:进货商品信息*/{longtemp;/*定义临时变量表示刚进货商品编号*/intj;printf("\n\t\5请输入刚进货商品编号:");scanf("%ld",&temp);printf("\n\t\5请输入刚进货商品数量:");scanf("%d",&j);printf("\n\n\n\tpressanykeytocontiue:");getch();system("cls");printf("\n\t输出进货后商品信息:");for(i=0;i<n;i++)/*循环,寻求和进货相同商品信息*/if(temp==goods[i].num)goods[i].count=goods[i].count+j;/*自动更改商品数量*/printf("\n\t商品编号商品名商品类别商品数量商品价格");for(i=0;i<n;i++)/*循环,输出进货后商品信息*/{printf("\n\t%4ld%4s%4s%ld%4ld",goods[i].num,goods[i].name,goods[i].sort,goods[i].count,goods[i].price); }printf("\n\n\t\tPressanykeytoentermenu:");getch();/*返回功效选择界面*/return;}—6—voidsell()/*功效4:销售商品信息*/{longtemp;/*定义临时变量temp表示刚销售商品编号*/intj;printf("\n\t\5请输入刚销售商品编号:");scanf("%ld",&temp);printf("\n\t\5请输入刚销售商品数量:");scanf("%d",&j);for(i=0;i<n;i++)/*循环,找到刚销售商品信息*/{if(temp==goods[i].num){for(;j>goods[i].count;)/*假如销售额大于库存量,则出现错误提醒*/{printf("\n\t售出数量大于商品原有数量,出现错误,请重新输入:");scanf("%d",&j);}goods[i].count=goods[i].count-j;/*完成自动更改商品数量功效*/}}printf("\n\tpressanykeytocontiue:");getch();system("cls");/*清屏*/printf("\n\n*销售后商品信息:");printf("\n\t商品类别商品编号商品名称商品数量商品单价\n");for(i=0;i<n;i++)/*循环,输出销售后商品信息*/{printf("\t%4s%4ld%4s%4ld%4ld\n",goods[i].sort,goods[i].num,goods[i].name,goods[i].count,goods[i].price);}printf("\n\tPressanykeytoentermenu:");getch();return;/*返回功效选择界面*/} voidedit()/*功效5:添加或删除商品信息*/{ voidadd();/*申明子函数*/ voiddele();—7— printf("\n\t请选择:1.添加商品信息;2.删除商品信息;"); printf("\t*请输入1或2继续:"); scanf("%d",&k); switch(k)/*用switch语句实现功效选择*/{ case1:add();break;case2:dele();break;}getch();return;/*返回主菜单*/}voidadd()/*添加商品信息*/{/*定义子函数*/ printf("\t*请输入所添加商品商品编号:");scanf("%ld",&goods[n].num);printf("\n\t请输入所添加商品名称:");scanf("%s",goods[n].name);printf("\n\t请输入所添加商品类别:");scanf("%s",goods[n].sort);printf("\n\t请输入所添加商品数量:");scanf("%d",&goods[n].count);printf("\n\t请输入所添加商品价格:");scanf("%d",&goods[n].price);n=n+1;printf("\n");}voiddele()/*删除商品信息*/{/*定义子函数*/ inttemp;/*定义局部变量*/intj;for(i=0;i<n;i++){ printf("\n\t商品编号商品名商品类别商品数量商品价格"); printf("\n\t%5ld%5s%5s%5ld%5ld",goods[i].num,goods[i].name,goods[i].sort,goods[i].count,goods[i].price); printf("\n");}printf("\n");printf("\n*请输入要删除商品编号:");scanf("%ld",&temp);printf("\n\n");—8—for(i=0;i<n;i++){if(temp==goods[i].num){ for(j=i;j<n;j++){goods[j].num=goods[j+1].num;strcpy(goods[j].name,goods[j+1].name);strcpy(goods[j].sort,goods[j+1].sort);goods[j].count=goods[j+1].count;goods[j].price=goods[j+1].price;}n=n-1;/*商品总库存量降低*/}}for(i=0;i<n;i++){ printf("\n\t商品编号商品名商品类别商品数量商品价格");/*输出删除后商品信息*/ printf("\n\t%5ld%5s%5s%5ld%5ld",goods[i].num,goods[i].name,goods[i].sort,goods[i].count,goods[i].price);printf("\n");}printf("Pleasepressanykeytocontinue:");getch();return;/*返回主界面*/}voidcorrect()/*功效6:修改商品信息*/{longtemp;/*定义局部变量*/ printf("\n\t请输入要修改商品编号:"); scanf("%ld",&temp);/*输入新商品信息*/ printf("\n"); for(i=0;i<n;i++)/*保留新商品信息*/{ if(temp==goods[i].num){printf("\t请输入一个新商品编号:");scanf("%ld",&goods[i].num);printf("\n\t请输入新商品名称:");scanf("%s",goods[i].name);printf("\n\t请输入新商品类别:");—9—scanf("%s",goods[i].sort);printf("\n\t请输入新商品数量:");scanf("%d",&goods[i].count);printf("\n\t请输入新商品价格:");scanf("%d",&goods[i].price);printf("\n"); }}for(i=0;i<n;i++){ printf("\n\t新商品名称商品编号商品类别商品数量商品单价\n"); printf("\t%4s%4ld%4s%4ld%4ld",goods[i].name,goods[i].num,goods[i].sort,goods[i].count,goods[i].price); printf("\n");}printf("Pleasepressanykeytocontinue:");/*返回功效选择界面*/getch();return;/*返回主菜单*/}voidsearch()/*功效7:查询商品信息*/{intk;/*定义局部变量*/longtemp1;chartemp2[30],temp3[20];printf("\n\t\5按商品编号查询,请按1\t\t\t\5按商品名查询,请按2\n\t\5按商品类别查询,请按3\t\t\t\5查需要进货商品,请按4\n");printf("\n\n\n\t\t\t请输入数字确定查询方法:");scanf("%d",&k);printf("\n");printf("Pressanykeytocontinue:");getch();system("cls");switch(k)/*实现查询方法选择*/{case1:{printf("\n\n\n\n\n\t\t请输入要查询商品编号:");/*按商品编号查询*/ scanf("%ld",&temp1); system("cls");/*清屏*/ for(i=0;i<n;i++){—10—if(temp1==goods[i].num){printf("\n");printf("\n\t商品编号商品名商品类别商品数量商品价格"); printf("\n\t%5ld%5s%5s%5ld%5ld",goods[i].num,goods[i].name,goods[i].sort,goods[i].count,goods[i].price);}}}break;/*跳出switch语句*/case2:{printf("\n\n\n\n\n\t\t请输入要查询商品名:");/*按商品名查询数据*/ scanf("%s",temp2); system("cls");for(i=0;i<n;i++){if(strcmp(temp2,goods[i].name)==0){printf("\n");printf("\n\t商品编号商品名商品类别商品数量商品价格");printf("\n\t%5ld%5s%5s%5ld%5ld",goods[i].num,goods[i].name,goods[i].sort,goods[i].count,goods[i].price);}}}break;/*跳出switch语句*/case3:{printf("\n\n\n\n\n\t\t请输入要查询商品类别:");/*按商品类别查询数据*/ scanf("%s",temp3); system("cls"); for(i=0;i<n;i++){if(strcmp(temp3,goods[i].sort)==0){printf("\n");printf("\n\t商品编号商品名商品类别商品数量商品价格"); printf("\n\t%5ld%5s%5s%5ld%5ld",goods[i].num,goods[i].name,goods[i].sort,goods[i].count,goods[i]—11—.price);}}}break;/*跳出switch语句*/case4:{inta=50; for(i=0;i<n;i++)/*查询需要进货商品名*/ { if(goods[i].count<a) printf("\n\t\t\4需要进货商品名:%s现有库存量:%ld\n",goods[i].name,goods[i].count); }}break;/*跳出switch语句*/}printf("\n\n\t\tPressanykeytoentermenu:");getch();return;/*返回主界面*/}voidscan()/*功效8:浏览商品信息*/{ printf("\n\t浏览输入商品信息,请按1\n\n\t浏览查询商品信息,请按2\n\n\t浏览排序后商品信息,请按3\n"); printf("请选择:"); scanf("%d",&k);switch(k){case1:{printf("\t\t\t浏览输入商品信息\n"); printf("\t商品编号商品名商品类别商品数量商品价格\n");/*输出浏览商品信息*/for(i=0;i<n;i++){printf("\t%5ld%5s%5s%5ld%ld",goods[i].num,goods[i].name,goods[i].sort,goods[i].count,goods[i].price);printf("\n");}printf("Pressanykeytoentermenu:");getch();return;}break;/*跳出switch语句*/case2:{printf("\t\t\t浏览查询商品信息\n");—12— printf("\t商品编号商品名商品类别商品数量商品价格\n");/*输出浏览商品信息*/ for(i=0;i<n;i++) { printf("\t%5ld%5s%5s%5ld%ld",goods[i].num,goods[i].name,goods[i].sort,goods[i].count,goods[i].price);printf("\n"); } printf("\nPressanykeytoentermenu:");getch();return; }break;/*跳出switch语句*/case3:{printf("\t\t\t浏览按商品编号排序商品信息\n"); printf("\t商品编号商品名商品类别商品数量商品价格\n");/*输出浏览商品信息*/ for(i=0;i<n;i++) { printf("\t%5ld%5s%5s%5ld%ld",goods[i].num,goods[i].name,goods[i].sort,goods[i].count,goods[i].price);printf("\n"); } printf("\nPressanykeytoentermenu:");getch();return;/*返回主界面*/}break;/*跳出switch语句*/}}voidreserve()/*功效9:保留文件*/{ FILE*fp; charfile[15];/*用来存放文件保留路径和文件名*/system("cls");/*清屏*/printf("\n\t*请输入文

温馨提示

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

评论

0/150

提交评论