1、文具信息可以用表1和表2来表示。表1 文具名称文具类别文具数量钢笔1400日记本22000计算器350表2文具类别号文具类别名文具纸张工具三、源程序#includestdlib.hmalloc.hstring.hiostream.h#define ERROR 0#define OK 1#define OVERFLOW 0typedef struct char name10; char lb10; int count;datatype;typedef struct node datatype name; struct node *next;listnode,*linklist;int menu_
2、select();int linklist_init(linklist &head);int linklist_create(linklist &int linklist_insert(linklist &int linklist_find(linklist head);int linklist_delete(linklist &int linklist_print(linklist head);int menu_select() int sn; printf(n 文具店商品管理 n);=n 1.商店商品的初始状态 n 2.商品的存入 n 3.商品的查询 n 4.商品的卖出 n 5.商品的输出
3、检索 n 6.退出管理系统 nn=n选择1-6: for(;) scanf(%d,&sn); if(sn6) printf(输入错误,从新选择(1-6): else break; return sn;head) /初始化 head=(linklist)malloc(sizeof(listnode); if(!head) exit(OVERFLOW); head-next=NULL; return OK;head) /商品的创建 linklist p,rear; int flag=0; rear=head; while(flag=0) p=(linklist)malloc(sizeof(list
4、node); printf(n商店初始商品文具名称: cinp-name.name;n初始文具数量:name.count;n初始文具类别:name.lb; p- rear-next=p; rear=p;结束初始化吗?(1/0):flag); rear-head) /向商店存货(存入文具) linklist p,p1,p2; p2=head; p2=p2-next; p=(linklist)malloc(sizeof(listnode);输入要存货的文具名称: cinn存货的文具数量:n存货的文具类别: while(p2!=NULL) if(strcmp(p2-name.name,p-name.
5、name)=0) p2-name.count+=p-n存货成功! return OK; p1=p2; p2=p2- if(p2=NULL) p1- return ERROR;head) /商店卖出文具 linklist p,t; t=head; t=t-卖出商品的文具名称:n想卖出多少件: while(t! if(strcmp(t- if(t-name.count=0) printf(n此类商品已经销售完。 return ERROR; else name.countname.count-=p-n此类文具卖出成功! return OK; t=t- if(t=NULL)n商店没有此类文具。int
6、linklist_print(linklist head) /输出 linklist p1; p1=head; p1=p1-文具名称 文具类别 文具数量n while(p1!%4st%14st%20d,p1-name.name,p1-name.lb,p1-name.count); p1=p1-nint linklist_find(linklist head) /查找 p1=p2=head;n输入要查找的文具名称:n查找成功,输出如下:,p2-name.name,p2-name.lb,p2-n查找不成功!void main() linklist head; linklist_init(head)
7、; switch(menu_select() case 1: /创建 linklist_create(head); break; case 2: /存货 linklist_insert(head); case 3: /查询文具 linklist_find(head); case 4: /卖出文具 linklist_delete(head); case 5: /检索文具 linklist_print(head); case 6:n谢谢光临,欢迎回顾!四、 调试分析调试的过程中,对程序做了几点改进,增加了程序的容错能力,不论用户输入什么内容,程序都能安全检查。五、 测试结果进入演示程序后,即显示主
8、界面为:根据提示,用户输入选项:1、 进入商店商品的初始化状态输入表1和表2信息其中:结束初始化吗? (1/0) 选择 0 代表不结束,即继续输入商品信息,选择1 代表,商品信息输入结束.2、 商品的存入(例:文具店需进 钢笔 300 , 橡皮 200 )3、商品的查询 (查询一种商品的信息, 这里以钢笔为例)初始化时,钢笔 400 ;后进货, 钢笔 300;文具店现有存货为:钢笔 700;4、商品的卖出以钢笔为例: 钢笔现存 700; 要卖出 200剩余 钢笔 5005、商品的输出检索可以查看现库存商品的信息6、退出管理系统六、课程设计小结: 通过这次课程设计,对程序设计和调试的能力有很大的提升。这次课程设计使我深刻认识到自己专业知识的匮乏,缺乏独立程序设计的能力。通过这次的课程设计也是我认识到了我在程序设计方面的严重不足,以及专业知识的严重匮乏。我的程序设计思想和代码的编写和调试能力在此次课设期间有所提高。这样一种更贴切实际的课程设计,大大的提高了我的学习效率,希望能够在平时教学的时候也能加入一些类似课程设计的程序设计习题
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1