药店的药品销售统计系统.docx

上传人:b****1 文档编号:10330048 上传时间:2023-05-25 格式:DOCX 页数:15 大小:128.50KB
下载 相关 举报
药店的药品销售统计系统.docx_第1页
第1页 / 共15页
药店的药品销售统计系统.docx_第2页
第2页 / 共15页
药店的药品销售统计系统.docx_第3页
第3页 / 共15页
药店的药品销售统计系统.docx_第4页
第4页 / 共15页
药店的药品销售统计系统.docx_第5页
第5页 / 共15页
药店的药品销售统计系统.docx_第6页
第6页 / 共15页
药店的药品销售统计系统.docx_第7页
第7页 / 共15页
药店的药品销售统计系统.docx_第8页
第8页 / 共15页
药店的药品销售统计系统.docx_第9页
第9页 / 共15页
药店的药品销售统计系统.docx_第10页
第10页 / 共15页
药店的药品销售统计系统.docx_第11页
第11页 / 共15页
药店的药品销售统计系统.docx_第12页
第12页 / 共15页
药店的药品销售统计系统.docx_第13页
第13页 / 共15页
药店的药品销售统计系统.docx_第14页
第14页 / 共15页
药店的药品销售统计系统.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

药店的药品销售统计系统.docx

《药店的药品销售统计系统.docx》由会员分享,可在线阅读,更多相关《药店的药品销售统计系统.docx(15页珍藏版)》请在冰点文库上搜索。

药店的药品销售统计系统.docx

药店的药品销售统计系统

数据结构实验报告

 

实验六

 

实验题目:

小型系统开发(课程设计)

指导老师:

王文霞

专业班级:

计算机科学与技术系1102班

姓名:

王珣(2011100216)李国宝(2011100220)

马佳丽(2011100238)张艳(2011100257)

2013年5月30日

 

实验类型_设计_实验室_软件实验室一__

1、实验题目

小型系统开发(课程设计)

2、实验目的和要求

掌握小型系统开发方法,提高学生综合开发能力。

根据实际问题,设计方案,综合运用课程知识,完成《学生成绩管理系统》或《数据结构算法演示系统》的设计、编程与调试工作。

三、实验内容

上机实验内容三:

药店的药品销售统计系统

1.设计一系统,实现医药公司定期对各药品的销售记录进行统计,并按药品编号、单价、销售量或销售额做出排序。

2.设计分析

在设计中,首先从数据文件读出各药品的信息记录,存储在顺序表中。

各药品的信息包括:

药品编号、药品名称、单价、销售量、销售额。

其中药品编号共4位,采用字母和数字混合编号,如:

B125,前一位为大写字母,后三位为数字。

3.存储结构类型定义

①药品信息的存储结构类型定义

typedefstructnode

{

 charnum[4];/*药品编号*/

 charname[10];/*药品名称*/

floatprice;/*单价*/

intcount;/*销售量*/

floatsale;/*销售额*/

}DataType;

②存储药品信息的顺序表的定义

typedefstruct

{

 DataTyper[maxsize];

 intlength;

}sequenList;

四、实验步骤

#include

#include

#include

#definemaxsize100//该医药公司药品最大种类

typedefstructnode//药品信息的存储结构类型定义

{

charnum[10];//药品编号

charname[30];

floatprice;//单价

intcount;//销售量

floatsale;//销售额

}DataType;

typedefstruct//存储药品信息的顺序表的定义

{

DataTyper[maxsize];

intlength;

inttype;

}SqList;

voidnumber(SqList*L)//按药品编号排序

{

inti,j;

charnum1[10],name1[30];

floatprice1,sale1;

intcount1;

for(i=0;itype;i++)

for(j=i+1;jtype;j++)

if(strcmp(L->r[j].num,L->r[i].num)>0)

{strcpy(num1,L->r[j].num);

strcpy(L->r[j].num,L->r[i].num);

strcpy(L->r[i].num,num1);

strcpy(name1,L->r[j].name);

strcpy(L->r[j].name,L->r[i].name);

strcpy(L->r[i].name,name1);

price1=L->r[j].price;

L->r[j].price=L->r[i].price;

L->r[i].price=price1;

count1=L->r[j].count;

L->r[j].count=L->r[i].count;

L->r[i].count=count1;

sale1=L->r[j].sale;

L->r[j].sale=L->r[i].sale;

L->r[i].sale=sale1;

}

printf("\t按药品编号排序后:

\n");

printf("\t药品编号药品名称药品单价药品销售量药品销售额\n");

for(i=0;itype;i++)

printf("\t%s\t%s\t%f\t%d\t%f\n",L->r[i].num,L->r[i].name,L->r[i].price,L->r[i].count,L->r[i].sale);

}

voidnam(SqList*L)//按药品名称排序

{

inti,j;

charnum1[10],name1[30];

floatprice1,sale1;

intcount1;

for(i=0;itype;i++)

for(j=i+1;jtype;j++)

if(strcmp(L->r[j].name,L->r[i].name)>0)

{strcpy(num1,L->r[j].num);

strcpy(L->r[j].num,L->r[i].num);

strcpy(L->r[i].num,num1);

strcpy(name1,L->r[j].name);

strcpy(L->r[j].name,L->r[i].name);

strcpy(L->r[i].name,name1);

price1=L->r[j].price;

L->r[j].price=L->r[i].price;

L->r[i].price=price1;

count1=L->r[j].count;

L->r[j].count=L->r[i].count;

L->r[i].count=count1;

sale1=L->r[j].sale;

L->r[j].sale=L->r[i].sale;

L->r[i].sale=sale1;

}

printf("\t按药品编号排序后:

\n");

printf("\t药品编号药品名称药品单价药品销售量药品销售额\n");

for(i=0;itype;i++)

printf("\t%s\t%s\t%f\t%d\t%f\n",L->r[i].num,L->r[i].name,L->r[i].price,L->r[i].count,L->r[i].sale);

}

voidpric(SqList*L)

{

inti=0,j;

charnum1[10],name1[30];

floatprice1,sale1;

intcount1;

for(i=0;itype;i++)

for(j=i+1;jtype;j++)

if(L->r[j].price>L->r[i].price)

{strcpy(num1,L->r[j].num);

strcpy(L->r[j].num,L->r[i].num);

strcpy(L->r[i].num,num1);

strcpy(name1,L->r[j].name);

strcpy(L->r[j].name,L->r[i].name);

strcpy(L->r[i].name,name1);

price1=L->r[j].price;

L->r[j].price=L->r[i].price;

L->r[i].price=price1;

count1=L->r[j].count;

L->r[j].count=L->r[i].count;

L->r[i].count=count1;

sale1=L->r[j].sale;

L->r[j].sale=L->r[i].sale;

L->r[i].sale=sale1;

}

printf("\t按药品编号排序后:

\n");

printf("\t药品编号药品名称药品单价药品销售量药品销售额\n");

for(i=0;itype;i++)

printf("\t%s\t%s\t%f\t%d\t%f\n",L->r[i].num,L->r[i].name,L->r[i].price,L->r[i].count,L->r[i].sale);

}

voidcoun(SqList*L)

{

inti=0,j;

charnum1[10],name1[30];

floatprice1,sale1;

intcount1;

for(i=0;itype;i++)

for(j=i+1;jtype;j++)

if(L->r[j].count>L->r[i].count)

{strcpy(num1,L->r[j].num);

strcpy(L->r[j].num,L->r[i].num);

strcpy(L->r[i].num,num1);

strcpy(name1,L->r[j].name);

strcpy(L->r[j].name,L->r[i].name);

strcpy(L->r[i].name,name1);

price1=L->r[j].price;

L->r[j].price=L->r[i].price;

L->r[i].price=price1;

count1=L->r[j].count;

L->r[j].count=L->r[i].count;

L->r[i].count=count1;

sale1=L->r[j].sale;

L->r[j].sale=L->r[i].sale;

L->r[i].sale=sale1;

}

printf("\t按药品编号排序后:

\n");

printf("\t药品编号药品名称药品单价药品销售量药品销售额\n");

for(i=0;itype;i++)

printf("\t%s\t%s\t%f\t%d\t%f\n",L->r[i].num,L->r[i].name,L->r[i].price,L->r[i].count,L->r[i].sale);

}

voidsales(SqList*L)

{

inti=0,j;

charnum1[10],name1[30];

floatprice1,sale1;

intcount1;

for(i=0;itype;i++)

for(j=i+1;jtype;j++)

if(L->r[j].sale>L->r[i].sale)

{strcpy(num1,L->r[j].num);

strcpy(L->r[j].num,L->r[i].num);

strcpy(L->r[i].num,num1);

strcpy(name1,L->r[j].name);

strcpy(L->r[j].name,L->r[i].name);

strcpy(L->r[i].name,name1);

price1=L->r[j].price;

L->r[j].price=L->r[i].price;

L->r[i].price=price1;

count1=L->r[j].count;

L->r[j].count=L->r[i].count;

L->r[i].count=count1;

sale1=L->r[j].sale;

L->r[j].sale=L->r[i].sale;

L->r[i].sale=sale1;

}

printf("\t按药品编号排序后:

\n");

printf("\t药品编号药品名称药品单价药品销售量药品销售额\n");

for(i=0;itype;i++)

printf("\t%s\t%s\t%f\t%d\t%f\n",L->r[i].num,L->r[i].name,L->r[i].price,L->r[i].count,L->r[i].sale);

}

voidmenu()

{

printf("\t\t\t销售记录排序\n");

printf("\t-----------------------------------------------\n");

printf("\t|1)按药品编号|\n");

printf("\t|2)按药品名称|\n");

printf("\t|3)按药品单价|\n");

printf("\t|4)按药品销售量|\n");

printf("\t|5)按药品销售额|\n");

printf("\t|0)退出系统|\n");

printf("\t-----------------------------------------------\n");

printf("请选择<0~5>");

}

main()

{

SqList*L;

intn,i,m;

charnum1[10],name1[30];

floatprice1,sale1;

intcount1;

FILE*fp;

L=(SqList*)malloc(sizeof(SqList));

fp=fopen("medince.txt","w");//创建文件

if(!

fp){printf("Sorry!

Fileopenerror!

\n");exit(0);}

printf("请输入药品种类数(<=100):

");

scanf("%d",&n);

L->type=n;

for(i=0;i

{

printf("请输入该药品的编号(格式如:

B125,前一位为大写字母,后三位为数字):

");

scanf("%s",num1);

getchar();

printf("请输入该药品的名称:

");

scanf("%s",name1);

getchar();

printf("请输入该药品的单价:

");

scanf("%f",&price1);

printf("请输入该药品的销售量:

");

scanf("%d",&count1);getchar();

sale1=price1*count1;

fprintf(fp,"%s\t%s\t%f\t%d\t%f\n",num1,name1,price1,count1,sale1);

printf("\n");

}

fclose(fp);

L->length=0;

fp=fopen("medince.txt","r");

if(!

fp){printf("Sorry!

Fileopenerror!

");exit(0);}

for(i=0;i

{

fscanf(fp,"%s\t%s\t%f\t%d\t%f\n",L->r[i].num,L->r[i].name,&L->r[i].price,&L->r[i].count,&L->r[i].sale);//从文件中读信息

L->length++;

}

fclose(fp);

printf("\t药品编号药品名称药品单价药品销售量药品销售额\n");

for(i=0;itype;i++)

printf("\t%s\t%s\t%f\t%d\t%f\n",L->r[i].num,L->r[i].name,L->r[i].price,L->r[i].count,L->r[i].sale);

while

(1)

{menu();

scanf("%d",&m);

switch(m)

{

case1:

number(L);break;

case2:

nam(L);break;

case3:

pric(L);break;

case4:

coun(L);break;

case5:

sales(L);break;

case0:

exit(0);break;

default:

printf("Sorry!

输入有误!

");break;

}

}

}

运行结果:

 

五、实验总结

通过此次试验我们完成了药店的药品销售统计系统。

在实验中,我们用到了文件,每个人又重新复习了一下文件。

我们明显感觉此次试验比前几次都简单多了,感觉挺爽快的。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2