数据结构课程设计
题目:仓库管理系统
班级:计12本2
姓名:贺萌萌
学号:1212210228
完成日期:2013-11-12
一:程序设计题目 2
二:程序设计目标 2
三:问题描述 2
四:.需求分析 2
五:=head; 〃尾指针初始指向头结点
while (flag=='y‘)
p=(ListNode *)malloc(sizeof(ListNode)); 〃申新结点
printf(" 商品编号(10) 商品名称(30) 商品数量(5)
\n");
printf(" \n");
printf("\n添加商品编号:\n");
cin»p->;
printf("\n添加商品名称:\n,
cin»p->;
printf("\n添加商品数量:\n,
cin»p->;
rear->next=p; 〃新结点连接到尾结点之后
rear=p; 〃尾指针指向新结点
printf("继续添加记录?(y/n):");
cin»flag;
}
rear->next=NULL; 〃终端结点指针置空
return head; 〃返回链表头指针
/*********在命匿管理命车表 kporl 中墙入结占************/
void InsertNode(LinkList head,ListNode *p)
ListNode *pl,*p2;
pl=head;
p2=pl->next;
while(p2!=NULL && strcmp(p2->,p->)<0)
{
p 1 =p2; //p 1指向刚访问过的结点
p2=p2->next; 〃p2指向表的下一个结点
}
p 1 ->next=p; 〃插入p所指向的结点
p->next=p2; 〃连接表中剩余的结点
/**********有序仓库管理链表的杳找****************/
ListNode *ListFind(LinkList head)
{
ListNode *p;
char num[10];
char name[9];
char pp;
printf("==================\n");
printf(" \n");
printf(" \n");
printf("==================\n");
printf(" 请 选 择: ");
p=head->next;
cin»pp;
getchar();
if (pp=='a'llpp=='A')
{
printf("请输入要查找的商品编号:");
cin»num;
while (p&&strcmp(p->,num)<0)p=p->next;
if ((p==NULL)llstrcmp(p->,num)>0) p=NULL; //
没有查到要查找的通讯信息
}
else
if (pp=='b'llpp=='B‘)
{
printf("请输入要查找的商品名称:”);
cin»name;
while(p&&strcmp(p->,name)!=O) p=p->next;
return p;
/********命匿管理盘车关卜的结占删除*****************/
void DelNode(LinkList head)
{
char jx;
ListNode *p,*q;
p=ListFind(head); //调用查找函数
if (p==NULL)
{
printf(”没有查到要删除的商品信息!\n");
return;
}
if(p!=NULL) printf("真的要删除该商品吗?(y/n): cin»jx;
if (jx==Vlljx==Y)
{
q=head;
while ((q!=NULL)&&(q->next!=p)) q=q->next;
q->next=p->next; 〃删除结点
free(p); 〃释放被删结点空间
printf("删除成功! \n");
/********仓库管理链表的输出函数**********/
void PrintList(LinkList head)
ListNode *p;
p=head->next;
printf("
商品编号
商品名称
\n");
商品数量
printf("
while (p!=NULL)
printf("%15s%20s%23s\n",p->
数据结构仓库管理课程设计 来自淘豆网m.daumloan.com转载请标明出处.