欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    数据结构课程设计——仓库管理系统源程序(9页).doc

    • 资源ID:36704808       资源大小:141.50KB        全文页数:9页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据结构课程设计——仓库管理系统源程序(9页).doc

    -数据结构课程设计仓库管理系统源程序-第 9 页#include<iostream>using namespace std;typedef structchar no10;char name30;int count;DataType;struct NodeDataType data;Node *next;class Linkpublic:Link(); /构造函数,建立单链表int Insert(); /插入节点,即添加货物Node * Search(); /查找某个节点void Delete(); /删除节点或更改节点的数据void show(); /输出节点信息char Yn(); /输入(y/n)函数char * No(); /输入货物编号函数void Fprintf(); /将单链表数据写到文件中void Fscanf(); /读取文件中的数据private:Node *first,*real,*p,*q;int main()int t=1,flag=1,f=1;char n;Node * p;Link Ku;while(t)printf("nnnnn"); printf("nttt*");printf("nttt* XXX仓库管理系统*"); printf("nttt* 1- 存储货物 *"); printf("nttt* 2- 查询货物信息 *"); printf("nttt* 3- 取出货物 *"); printf("nttt* 4- 显示仓库内所有货物信息 *"); printf("nttt* 0- 退出仓库管理系统 *"); printf("nttt*"); printf("nttt请选择菜单号(0-4):");f=1;while(f=1)cin>>n;if(n<'0'|n>'4')printf("输入有误,请重新输入(0-4):");f=1;elsef=0;printf("nn");switch(n)case '1':printf("*n");printf("* 存储货物 *n");printf("*n");/printf(" 货物编号 货物名称 货物数量n");/printf("*n");int a=1;while(a=1)a=Ku.Insert();Ku.Fprintf();/将单链表里的数据写入文件。break;case '2':printf("*n");printf("* 查询货物信息 *n");printf("*n");flag=1;char yn;while(flag=1)p=Ku.Search();if(p)printf("n货物编号 货物名称 货物数量 n");printf("-n");printf("%5s%9s%8dn",p->data.no,p->data.name,p->data.count);printf("-n");elseprintf("仓库中没有该货物!n");printf("是否继续查询?(y/n):");yn=Ku.Yn();if(yn='y'|yn='Y')flag=1;if(yn='n'|yn='N')flag=0;break;case '3':printf("*n");printf("* 取出货物 *n");printf("*n");flag=1;char yn;while(flag=1)Ku.Delete();printf("是否继续取货?(y/n):");yn=Ku.Yn();/调用输入y/n函数if(yn='y'|yn='Y')flag=1;if(yn='n'|yn='N')flag=0;break;case '4':Ku.show();break;case '0':char yn;printf("确定退出仓库管理系统吗?(y/n):");yn=Ku.Yn();/调用输入y/n函数if(yn='y'|yn='Y')printf("谢谢使用.n");t=0;if(yn='n'|yn='N')t=1;break; return 0;Link:Link()first=new Node;first->next=NULL;real=first;FILE *fp=NULL;fp=fopen("d:file01.txt","a");fclose(fp);/Fprintf();Fscanf();int Link:Insert()char yn;char no10,name30;int count,t;printf("n 货物编号 货物名称(30) 货物数量(5) n");printf("-n");printf("n请输入货物编号(10个字符以内):n");strcpy(no,No();printf("n输入货物名称(30个字符以内):n");cin>>name;t=1;while(t)printf("输入货物数量(整数): ");cin>>count;if(count<=0)t=1;printf("货物数量必须大于0,请重新");elset=0;p=first;real=first;p=p->next;while(p)if(strcmp(p->data.no,no)=0&&strcmp(p->data.name,name)=0)/printf("仓库中已有该货物%d件n",p->data.count);p->data.count=p->data.count+count;printf("添加成功!仓库中现有该货物%d件n是否继续存货?(y/n):",p->data.count);yn=Yn();if(yn='y'|yn='Y') return 1;if(yn='n'|yn='N') return 0;if(strcmp(p->data.no,no)=0&&strcmp(p->data.name,name)!=0)printf("该货物的名称输入有误,应为 %sn请重新输入(y)或取消存货(n): ",p->data.name);yn=Yn();if(yn='y'|yn='Y') return 1;if(yn='n'|yn='N') return 0;if(strcmp(p->data.no,no)!=0&&strcmp(p->data.name,name)=0)printf("该货物的编号输入有误,应为 %sn请重新输入(y)或取消存货(n): ",p->data.no);yn=Yn();if(yn='y'|yn='Y') return 1;if(yn='n'|yn='N') return 0;real=p;p=p->next;if(p=NULL)Node *s=new Node;strcpy(s->data.no,no);strcpy(s->data.name,name);s->data.count=count;s->next=NULL;real->next=s;real=s;printf("添加成功!仓库中现有该货物%d件n是否继续存货?(y/n):",real->data.count);yn=Yn();if(yn='y'|yn='Y') return 1;if(yn='n'|yn='N') return 0;return 0;Node * Link:Search()char ab;char no10,name30;int f;p=first;printf("=n");printf(" a. 按货物编号查询 n");printf(" b. 按货物名称查询 n");printf("=n");printf(" 请 选 择(a/b): ");f=1;while(f=1)cin>>ab;if(ab='a'|ab='A'|ab='b'|ab='B')f=0;if(ab='a'|ab='A')printf("n请输入货物编号(10个字符内):n");strcpy(no,No();while(p&&strcmp(p->data.no,no)!=0)p=p->next;if(ab='b'|ab='B')printf("n请输入货物名称(30个字符内):");cin>>name;while(p&&strcmp(p->data.name,name)!=0)p=p->next;elsef=1;printf("输入有误,请重新输入(a/b):");return p;void Link:Delete()Node *q,*p;int count,t;char yn;p=Search();if(p=NULL)printf("仓库中没有该货物!n");elseprintf("n仓库中有该货物 %d件。",p->data.count);int flag=1;while(flag=1)printf("n请输入要取出的货物数量(整数):");t=1;while(t=1)cin>>count;if(count<0)t=1;printf("取货数量不能为负数,请重新输入取货数量(整数):");elset=0;if(count>p->data.count)printf("n输入的取货数量超过库存,是否要重新输入取货数量?(y/n):");yn=Yn();if(yn='y'|yn='Y') flag=1;if(yn='n'|yn='N') flag=0;elseflag=0;if(count<p->data.count)p->data.count=p->data.count-count;Fprintf();/修改文件里的数据。printf("n取货成功!仓库中还有该货物%d件n",p->data.count);printf("n是否继续取出该货物?(y/n):");yn=Yn();if(yn='y'|yn='Y')flag=1;if(yn='n'|yn='N')flag=0;elseq=first;while(q!=NULL&&q->next!=p)q=q->next;q->next=p->next;delete p;Fprintf();/将单链表里的数据写入文件。printf("n取货成功!该货物已被全部取出!n");void Link:show()if(first->next=NULL)printf("仓库内没有货物!");elseprintf(" 货物编号 货物名称 货物数量 n"); printf("-n");p=first->next;while(p)printf("%15s%23s%23dn",p->data.no,p->data.name,p->data.count);p=p->next;printf("-n");char Link:Yn()int f=1;char yn;while(f=1)cin>>yn;if(yn='y'|yn='Y'|yn='n'|yn='N')f=0;return yn;elsef=1;printf("输入有误,请重新输入(y/n):");char * Link:No()int t=1,i;char *no=NULL,no110;while(t)t=0;cin>>no1;no=no1;for(i=0;noi;i+)if(noi<'0'|noi>'9')t=1;printf("货物编号只能由0-9的字符组成,请重新输入货物编号(10个字符内):");break;return no1;void Link:Fprintf()FILE *fp=NULL;fp=fopen("d:file01.txt","w");p=first->next;while(p!=NULL)fprintf(fp,"%10s%30s%10dn",p->data.no,p->data.name,p->data.count);p=p->next;fclose(fp);void Link:Fscanf()FILE *fp=NULL;p=first;Node *s;fp=fopen("d:file01.txt","r");if(fp=NULL) cout<<"不能打开文件!"<<endl;exit(0);while(feof(fp)=0)s=new Node;fscanf(fp,"%s%s%dn",s->data.no,s->data.name,&s->data.count);if(s->data.count>0)p->next=s;p=s;p->next=NULL;fclose(fp);

    注意事项

    本文(数据结构课程设计——仓库管理系统源程序(9页).doc)为本站会员(1595****071)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开