数据结构课程设计 药品销售统计系统Word文档下载推荐.docx
- 文档编号:18164219
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:9
- 大小:119.62KB
数据结构课程设计 药品销售统计系统Word文档下载推荐.docx
《数据结构课程设计 药品销售统计系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《数据结构课程设计 药品销售统计系统Word文档下载推荐.docx(9页珍藏版)》请在冰豆网上搜索。
1.功能设计
一个完整的系统应具有以下功能:
1)BubbleSort(k):
冒泡排序
2)QuickSort(&
k):
快速排序
3)SelectionSort(k):
选择排序4)退出程序。
六、详细设计
1.流程图
-1-
开始
主函数main()
输入choice
1230
BubbleSort(k)QuickSort(&
k)SelectionSort(k)退出~
输出
结束
2.代码
#include"
stdio.h"
#defineMaxSize100
typedefstruct
{
charnum[10];
/*药品编号*/
charname[16];
/*药品名称*/
floatprice;
/*药品单价*/
intcount;
/*销售数量*/
floatsale;
/*本药品销售额*/
intnext;
}DataType;
-2-
DataTyper[MaxSize];
intlength;
}SequenList;
voidBubbleSort(SequenList&
L)//冒泡排序{
inti,j;
boolflag;
DataTypetemp;
for(i=L.length-1;
i>
=0;
i--){
flag=0;
for(j=0;
j<
i;
j++)
if(L.r[j].price>
L.r[j+1].price)
temp=L.r[j];
L.r[j]=L.r[j+1];
L.r[j+1]=temp;
flag=1;
}
if(!
flag)break;
printf("
按单价排序后的结果是:
\n"
);
for(i=0;
i<
L.length;
i++)
%s%s%f%d%f"
L.r[i].num,L.r[i].name,L.r[i].price,L.r[i].count,L.r[i].sale);
voidswap(DataType*a,DataType*b)
-3-
DataTypetemp=*a;
*a=*b;
*b=temp;
voidQsort(SequenList*L,intLow,intHigh)
DataTypetemp=L->
r[Low];
intleft=Low,right=High;
if(Low>
=High)return;
swap(&
L->
r[Low],&
r[right]);
while
(1)
while((Low<
High)&
&
(temp.count>
=L->
r[Low].count))Low++;
(temp.count<
r[High].count))High--;
if(Low<
High)
r[High]);
elsebreak;
//对两个子集进行快排
Qsort(L,left,Low-1);
Qsort(L,Low+1,right);
voidQuickSort(SequenList*L)//快速排序
inti;
Qsort(L,0,L->
length-1);
用快速排序对销售量排序后的结果是:
for(i=0;
length;
-4-
L->
r[i].num,L->
r[i].name,L->
r[i].price,L->
r[i].count,L->
r[i].sale
voidSelectionSort(SequenList&
L)//选择排序
inti,j,min;
for(i=0;
L.length-1;
min=i;
for(j=i+1;
if(L.r[j].sale<
L.r[min].sale)
min=j;
temp=L.r[i];
L.r[i]=L.r[min];
L.r[min]=temp;
-5-
voidmain()
SequenListk;
k.length=0;
intchoice;
while(k.length<
5)
请输入药品编号:
"
scanf("
%s"
&
k.r[k.length].num);
请输入药品名称:
k.r[k.length].name);
请输入药品单价:
%f"
k.r[k.length].price);
请输入药品销售数量:
%d"
k.r[k.length].count);
请输入药品销售额:
k.r[k.length].sale);
k.length++;
此系统有如下功能:
********************************\n"
1、用冒泡对药品单价排序*\n"
2、用快排对药品销售量排序*\n"
3、用选择排序对销售额排序*\n"
0、退出系统*\n"
请输入您的选择:
choice);
while(choice)
switch(choice)
case1:
BubbleSort(k);
break;
//冒泡排序
case2:
QuickSort(&
k);
//快速排序
case3:
SelectionSort(k);
//选择排序
default:
没有您选择的功能,请确定后重新输入\n"
-6-
*********************************\n"
1、用冒泡对药品单价排序\n"
2、用快排对药品销售量排序\n"
3、用选择排序对销售额排序\n"
0、退出系统\n"
七(测试分析
白盒:
代码完整
黑盒:
打开VC++6.0环境,编译连接程序是否有错
连接生成可执行exe文件
八、使用说明
打开VC++6.0环境,编译连接生成可执行文件,输入药品信息,按药品的编号、
单价、销售量或者销售额做出排名。
九、测试数据
-7-
-8-
-9-
十、总结
此次课程设计总的来说做的还是比较顺利的,因为资料书上的代码还是蛮全的,这倒是给了我很好的借鉴,省去了在网上查找部分代码的时间。
但是通过此次课程设计,我觉得对于基本代码的熟知度还是有点差,甚至于以前学的基本的循环代码现在都不太高的清楚。
虽然最终算是运行出来了,但是实在是不得不说,光理论不实践还是相当的不行的。
设计中得到广大同学的帮助,使我的程序设计能够较为顺利的进行下去。
在此我衷心感谢同学和对以上资源的支持者。
除此之外,通过本次课程设计巩固了课本的基本知识,熟练运用课程知识。
提高我们组织数据及编写程序的能力,使我们能根据问题要求和数据对象的特性,学会数据组织的方法,把现实世界中的问题在计算机内部表示出来并用软件解决问题。
-10-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构课程设计 药品销售统计系统 数据结构 课程设计 药品 销售 统计 系统