药店的药品销售统计系统排序应用汇编Word格式文档下载.docx
- 文档编号:13598205
- 上传时间:2022-10-12
- 格式:DOCX
- 页数:11
- 大小:59.71KB
药店的药品销售统计系统排序应用汇编Word格式文档下载.docx
《药店的药品销售统计系统排序应用汇编Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《药店的药品销售统计系统排序应用汇编Word格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。
药品编号、药名、药品单价、销出数量、销售额。
药品编号共4位,采用字母和数字混合编号,如:
125,前一位为大写字母,后三位为12数字,按药品编号进行排序时,可采用基数排序法。
对各药品的单价、销售量或销售额进行排序时,可采用多种排序方法,如直接插入排序、冒泡排序、快速排序,直接选择排序等方法。
在本设计中,对单价的排序采用冒泡排序法,对销售量的排序采用快速排序法,对销售额的排序采用堆排序法。
三、算法设计
首先从txt文件中读取数据信息并保存,本次试验采用了5中排序方法。
其中编号排序是按照基数排序,采用多关键字进行排序。
基数排序是借助“分配”和“收集”两种操作对单逻辑关键字进行排序的一种内排序方法。
对单价的排序采用了直接插入排序和冒泡排序,直接插入排序就是首先将第一个元素看成是一个有序的,然后第二个元素和第一个比较,若大于第一个则放在其后面否则放前面,依次直至最后一个。
冒泡排序就是采用两个循环,即将第一个元素和第二个比较若第一个大于第二个则交换,否则不变,然后第二个和第三个比较,同上。
第一趟可将最大的一个放在最后,依次可得排序。
销售量是快速排序,快速排序就是首先设置一个关键字,然后让最后一个和其比较,直至找到一个比关键字小的,然后和其交换,接下来让第一个和其比较,直至找到一个比其大的,然后交换,在找到的位置分别做标记,依次执行即可。
销售额使用的是堆排序,堆排序首先要建立一个完全二叉树的堆,其标准符合为父节点始终比子节点大。
然后依次输出顶结点,然后在建立一个符合标准的堆重复操作即可。
四、调试分析及数据测试
输入药品
五、测试结果
测试结果符合程序写作要求
#include<
stdio.h>
stdlib.h>
string.h>
#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;
i<
L->
type;
i++)
for(j=i+1;
j<
j++)
if(strcmp(L->
r[j].num,L->
r[i].num)>
0)
{strcpy(num1,L->
r[j].num);
strcpy(L->
r[i].num);
r[i].num,num1);
strcpy(name1,L->
r[j].name);
r[j].name,L->
r[i].name);
r[i].name,name1);
price1=L->
r[j].price;
L->
r[j].price=L->
r[i].price;
r[i].price=price1;
count1=L->
r[j].count;
r[j].count=L->
r[i].count;
r[i].count=count1;
sale1=L->
r[j].sale;
r[j].sale=L->
r[i].sale;
r[i].sale=sale1;
}
printf("
\t按药品编号排序后:
\n"
);
\t药品编号药品名称药品单价药品销售量药品销售额\n"
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)//按药品名称排序
r[i].name)>
voidpric(SqList*L)
inti=0,j;
if(L->
r[j].price>
r[i].price)
{strcpy(num1,L->
voidcoun(SqList*L)
r[j].count>
r[i].count)
voidsales(SqList*L)
r[j].sale>
r[i].sale)
r[j].
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 药店 药品 销售 统计 系统 排序 应用 汇编