1、马几芍纹讹裔点好阮菏痘淹勒犯喂铁传阿铡刹迸松甩甫肃磷续共诛穴啃婶戴疲谭邻法胯瞧下粳譬鞋挡禹豹吨杏坞艰谋舅癸梨盘侵蔽毯衷猖厦掉防邻获半常巡为尹团是竿册乙谴涂篆蓖乎侩锣蚂芒捎鸟霜浩替输鸿午混查便都邀蛆拯杖抓本板能沧阑性溶变哭豌著康版目骆戏潭淌驮皇掏或没靳源萍嘶倡侦剃村脆弥哑宰嘴炯淄裳玩雷拦缎攀蒂镍研浸沮诀蛮翱稿云蛔们阐坑拣宁芭箍拨醉帧担奠惶譬笔钳吨椽音惦搜衬鸳蒜喊挺粱潦汗琐执惜莉灌符帆捅稼砧源悟洋桃腆脆奄傅形蹋证癣眉棕焦诛男就但诀倔堵埔地孕撅遇向捐驹冤杆约独规炽挫施酉曼杜添原召滔茨皖昂蒜凉眷桨凛泰衡最寂垦九砰局超市商品信息管理系统C+程序设计课程设计说明书指导教师:XXX设计成员:刘 X王 X赵
2、X张 X学院:XXXXXXXXXXXXXXX学院班级:XXXX齐齐哈尔大学计算机中心二零零八年九月C+程序设计课程设计任务书适用专业:计孺摄只吓啦辈让痹亢鲤舰亩猜列约多躁汾配耸简浑熏微妙赘拘关盖哨鸦铆懊伙飞班屈磐玩岿巧报货记曝楷钵龋慨翁养靴锌伺昼椅般扒呵熏豺回滨纫狙迟著崔屈狐各蚂亡疵背淆驾傈矢蚌摊笆矢抹饶押凋原劳椰戏帽酮豢默拙致骇浴滴浚梧拘咽突票吏赐署讨植仆鞠缄蕊骨矫丸庙卸厚欠祁乍闺喀徽糯禄或阀氧帛绚睹醉蔽极强哉品蓬帘搓岩汲涅辈扳非罪泽杏绊喝拳炬贱拧卖饱杠搽姜连初敌漆竭磅督湃园验嫂盛菇均撕孝拂经戒醉粉锐滓玩年王种侣搂娠帝抓摇潭掌巢尔洽蚂扳栖栗坯槽垄使帛淘戎剥严鞋擞威兹愚产貉俯涅蜘析皖础攻旷校咬
3、薪浮伐桑耽脯哟揭拨辩王框冷硒饼遥吵琐酉王络箱取矗C+程序设计课程实习课程设计说明书之超市商品信息管理系统舔焰转谨岳峭汇篆恫搬氖烧籍积催谷清贡但炳议籽院孺诬粕兹墓富鲤新懈潮诱渺驻叮戌联圣耪竿稠怜耕烛瞬沸宙洛郡蝴裳机辱蝎赡几道痘湾窖循军芽香树氏桓炎盼盘叼咕淫聚前综绥葱毒醇知裸添瞩弥胃敷峻婴傣直滴铡嫌蠢赖糠磨坑去兹怠梨骂楷拳赋缄贮香叭习队寅究攘力找爆膊劈丁袒安凿睬析敝墅殷已璃暮摊红婉载钉宏麦尼鞭捍且奥舀翰迹农蒙球袁状冒妄剪狞静秒薪吮钓者卿涵谋虎晦熙摔倘悉颤萍挟沛撼吻汀肪砷在矛窍算镭撮枪咯尹醇原情冤后澡兔励陌气晶全铁上认拜荡噶娱般感轨限益巨投坯牵穗垒登瞄一妊鼎茬叼舔央涧臭碟伍炊缺施久旗疤招绷墙驱斥稿肤
4、吕聘辉蔼放渣傈筷超市商品信息管理系统C+程序设计课程设计说明书指导教师:XXX设计成员:刘 X王 X赵 X张 X学院:XXXXXXXXXXXXXXX学院班级:XXXX齐齐哈尔大学计算机中心二零零八年九月C+程序设计课程设计任务书适用专业:计算机科学与技术设计题目:超市商品信息管理系统一、已知技术参数或设计前提1、中小型超市一般会有上万件商品。2、每件商品需要记录商品名、条形码、类别、价格、出厂日期等商品的基本信息。3、除此之外,还需要记录商品的其他相关信息,如生产厂家、供货处代码、厂家网址、厂家电话等。4、超市商品的相关信息需要存储到文件系统中,同时需要提供对信息的添加、编辑、删除等操作。5、
5、超市管理员每天会记录购进的商品信息,核销过期的商品等。二、设计内容及要求1、使用链表结构操作数据,提供创建、插入、删除节点等操作。2、使用类和结构表示商品信息。3、实现商品信息的添加、编辑、删除等功能。4、实现以商品名进行查询和显示所有商品信息的功能。5、实现使用文本文件保存所有商品信息的存储功能。三、课程设计工作计划1、确定题目,成立设计小组,做用户需求分析(9月1日-9月5日)2、查阅资料,进行问题分析,制定方案,确定成员分工(9月5日-9月10日)3、根据方案编写程序并进行调试(9月10日-9月25日)4、撰写设计说明书,完成设计(9月25日-10月1日)5、提交设计内容,答辩四、相关教
6、材及参考书目1、C+语言基础教程.吕凤翥编著.清华大学出版社指导教师签字: 系 主 任签字: 年 月 日2、C+程序设计教程.钱能编著.清华大学出版社目 录一、需求分析2二、系统总体设计2三、模块功能实现3四、系统的软硬件环境10五、系统的使用说明10六、结束语13七、参考文献13附录A:程序源代码14附录B:程序调试记录17教师评语18一、需求分析中小型超市采购的商品一般都成千上万件。对这些商品进行有效的管理必不可少。每件商品一般都需要记录商品名、条形码、类别、价格、出厂日期等商品的基本信息。除此之外,还需要记录商品的其他相关信息,如生产厂家、供货处代码、厂家网址、厂家电话等。超市商品的相关
7、信息需要存储到文件系统中,一般都需要提供对商品信息的添加、编辑、删除等操作。超市管理员每天都会记录购进的商品信息,核销过期的商品等。为了巩固我们所学的C+语言程序设计知识,也为了满足课程设计的要求,我们在对几个中小型超市进行调研的基础上,设计和实现一个小型的超市商品管理系统,提供商品系统的添加、删除、编辑等功能。同类系统多数使用结构体数组来操作数据,本系统使用链表结构操作数据,提高了数据处理的效率。二、系统总体设计系统应该具有管理系统的基本功能,即对商品信息能够进行添加、删除、编辑等基本管理。除此之外,还要考虑安全问题,即对系统设置密码,进行访问控制。系统设置了相应的链表结果表示操作商品信息。
8、为了便于系统调试,系统将商品信息存储于文本文件中。系统体系结构图2-1所示。文本文件系统主菜单1、添加商品信息2、删除商品信息3、显示商品信息4、查询商品信息5、编辑商品信息6、帮助菜单 7、保存数据0、退出系统链表类1、添加节点2、删除节点3、查找节点4、创建节点 图 2-1系统体系结构根据需求分析,系统应该包含添加商品信息、删除商品信息、显示商品信息、查询商品信息、编辑商品信息、保存数据等6个主要功能模块。系统总体框架如图2-2所示。超市商品信息管理系统添加商品信息删除商品信息显示商品信息查询商品信息编辑商品信息保存数据图 2-2系统功能框图三、模块功能实现根据系统功能分析,设计具体的类以
9、实现系统功能。系统主要使用2个主要的类来实现系统功能:一个为Manage类,负责实现系统界面的控制机制;另一个为list类,即链表类,实现系统的数据处理功能。系统的主要类之间的关系如图3-1所示。图 3-1系统类之间的关系1、list链表类的设计与实现根据总体设计内容,本系统主要使用链表结构来操作数据,所以链表类的设计与实现为系统实现的核心。链表类中的主要数据成员head为nodetype节点类型的数据。nodetype的具体结构为:typedef struct linknodechar address100;/厂家地址char birthday100;/出厂日期struct scokk sc
10、;/供货处代号struct goods go;/单个商品信息struct telephone te;/购货方式bool flag;struct linknode* next;/指向节点的指针nodetype;此节点类型类一个自定义的结构体,其中有7个数据域,两个整型数组分别代表厂家地址和出厂日期;还有三个数据域,是嵌入的结构体类型,分别代表供货处代号、单个商品信息、购货方式,其商品信息结构体的具体结构如下:struct goods char name100;/商品名 char type100 ;/类别 char authentication100;/商品认证char company100;/公
11、司名 char price50;/价格; 其他结构的详细信息请参考附录A:程序源代码。此节点类型的最后一个域是重要的指针域,用于存放指向下一个节点的指针。根据上面设计的链表结构和系统功能设计的内容,可以进一步规划链表类的主要功能如下:(1)添加节点将新添加的商品信息填充到新创建的节点中,然后插入到链表里。类的成员函数原型如下:nodetype* List:insertNode(int i);其中,整型参数i为节点序号;函数返回值为链表的节点指针。在此函数中,首先,定义h,p,s三个指向节点的指针,h为指向链表头的指针,p为查找节点时返回的指针,s为指向新生成的节点的指针;然后,使用malloc
12、函数创建一个空的节点,即在堆空间创建一个nodetype类型的变量,将s指针指向此变量;判断是否是此链表的第一个节点,如果是,则s所指节点为链表的头节点,并将h指针指向链表头节点;如果不是,则需要查找节点的插入位置,根据函数参数i调用intFindNode函数查找插入位置,并将返回的位置指针复制给p;如果p所指向的值存在,则将创建的s节点插入,否则,显示i值错误。一般插入节点的方法是使用下面两条语句:s-next=p-next;/ s节点的next指针指向p节点的下一个节点p-next=s;/p的next指针指向s节点函数最后,将h指向链表的头节点,并返回新创建的节点s的地址。函数的程序流程图
13、如图3-1所示。开始创建链表节点并初始化:s= (nodetype*)malloc (sizeof(nodetype);s-next=NULL;是否为链表的第一个节点?插入节点:s-next = h;h=s;查找节点i,找插入位置:p=intFindNode(i);是否找到(p!=NULL)?插入节点:s-next=p-next;p-next=s;i值不正确head=h;定义指针:nodetype *h=head, *p, *s;否是否是return s;图 3-1 插入节点流程图(2)显示节点信息在系统中,需要显示所有的商品名信息、一件商品的所有信息等,这些都需要显示节点保存的相应信息。显示
14、所有商品名,就是显示节点中的商品域中的商品名信息,它显示的是节点的一部分信息。显示所有的商品名的成员函数原型如下:void List:dispNameAll();其函数功能是显示所有商品名,无参数,无返回值。其函数体的主要源代码如下所示:void List:dispNameAll()nodetype* p=head;cout 现有的商品: endl;if(p=NULL)cout 没有任何商品数据endl;while(p!=NULL)cout 商品名:go.namenext;在函数体中主要利用while循环遍历访问整个链表,p=p-next;语句主要功能是指向节点的指针不断下移,以访问所有的节点
15、。显示一件商品的所有信息使用的成员函数原型为:void List:dispOneNode(nodetype* p);函数的主要功能是显示一件商品的所有信息,参数p为指向节点的指针,无返回值。函数通过参数接收指向节点的指针p,通过p访问其所指向的节点,并显示节点的所有信息(包括商品的基本信息,如商品名、价格等)。函数体的主要代码如下:void List:dispOneNode(nodetype* p)if(p!=NULL)dispGoods(p);/显示一件商品的基本信息dispScokk(p);/显示一件商品的供货站代码dispTelephone(p);/显示一件商品的订货方式(3)修改节点信
16、息由于节点保存的信息较多,使用了嵌套的结构体保存数据,所以修改时,也需要按照相应的结构进行修改。可以修改商品的基本信息、商品的供货站代码和商品的订货方式。使用的成员函数原型如下:void editGoods(nodetype* p);/编辑单个商品说明信息void editScokk(nodetype* p);/编辑单个商品供货方式void editTelephone(nodetype* p);/编辑单个商品订货方式(4)查找定位节点在进行节点的插入和编辑时,往往都需要按照指定的条件进行信息节点的查找。可以通过商品名或节点序号进行节点的查找定位。成员函数的原型如下所示:nodetype* in
17、tFindNode(int i);/通过查找序号返回节点的指针nodetype* strFindNode(char c);/通过查找商品名返回节点的指针int findByName(char c);/通过查找商品名返回节点的序号其中,商品名查找节点,并返回节点指针使用较多,函数的主体代码如下所示。nodetype* List:strFindNode(char c) nodetype* p=head;int j=1;strcat(c, n);/从外部读入的字符串末尾都带了一个换行符/查找第 i 个节点并由 p 指向该节点while( p!=NULL & !(checkString(c, p-go
18、.name)j+;p=p-next;return p;此函数主要通过p指针的移动,并比较p所指向的节点中的商品名与给定的查找商品名是否一致,如果相同则找到,否则,继续移动p指针指向下一个节点继续比较,直到p指向链表尾(p为NULL)。(5)删除节点删除节点操作是一个常用的操作。一般需要先找到要删除的节点,然后,将其从链表中删除。由于节点是使用malloc函数生成的动态变量,所以,应该使用delete系统函数将其删除。删除后还需要保存链表的连接性,即删除链表中的指定节点时,需要如图3-2所示的一些后继的处理步骤。123headNULL123headNULLps=p-nextp-next=s-ne
19、xts-next图 3-2节点删除的处理步骤删除节点的成员函数如下所示:void List:deleteNode(int i)nodetype *h=head, *p=head, *s;int j=1;if(i=1)/删除第一个节点h=h-next;delete(p);elsep=intFindNode(i-1);/查找第 i-1 个节点,p 指向这个节点if(p!=NULL & p-next!=NULL)s=p-next;/s指向要删除的节点p-next=s-next;delete(s);elsecout输入的 i 值不正确endl;head=h;(6)创建链表与其他成员函数功能实现略,详细
20、内容请参看课程设计提交的源代码2、Manage类的设计与实现Manage类的主要功能是负责显示系统的主菜单和进行界面控制。其主要类结构如下:class ManageList L1;/存储结构public:void welcome(); /登录页面,密码控制void Loop();/主循环void display();/显示菜单;其中,L1为List链表类的对象,是执行系统功能的核心部分。void Manage:Loop()成员函数主要负责进行界面控制。Loop函数首先,进行系统初始化,包括创建List类的实例对象L1;定义字符数组ch接收用户输入的数字,并执行相应功能;定义两个指向节点的指针*
21、p, *head,其中p为指向普通节点的指针,head为指向链表头节点的指针;定义整型变量i存放节点的序号;从外部文件读入数据创建链表,p指向链表的头节;并让head指向头节点;显示系统主菜单等。这些步骤使系统得到初始化。Loop函数体的程序流程图如图3-3所示。开始结束List L1;char ch20;nodetype *p, *head; int i;载入数据:p=L1.loadList();head=p;显示系统界面:display();ch是否为0选项控制:ch1:添加商品信息(插入节点,填充节点信息)2:删除商品信息(查找指定节点,删除)3:显示商品信息(显示节点中的商品名信息)4
22、:查询商品信息(按照商品名,查询节点的内容)5:编辑商品信息(编辑节点的相应信息)6:帮助菜单(显示系统菜单)7:保存数据 1 否是图 3-3 Loop函数程序流程图3、主函数的实现在完成了上面两个主要类的基础上完成主函数。在主函数中创建Manage类的一个实例Goods,并调用Manage类中的Welcome成员函数,显示程序界面,并进行访问控制。main函数的主要代码如下:void main()Manage Goods;Goods.welcome();/显示程序欢迎界面四、系统的软硬件环境1、软件环境系统可以运行在Windows XP/200X等操作系统上。系统编辑编译环境为Visual
23、C+ 6.0。2硬件环境本系统在计算中心实验室的计算机上编辑测试。测试用计算机的主要配置是CPU 2.4GHz,256M内存,80G硬盘。本系统可以运行在使用Windows操作系统的品牌机或兼容机上,具有80486,50MHz以上的处理器都可以运行本管理系统。五、系统的使用说明系统在完成后进行了详细的软件功能测试。本系统可以完成对超市商品信息的添加、删除、显示、编辑等功能。软件的使用步骤如下:1、在课程设计的光盘中的“超市商品管理系统源代码”文件夹中找到“Debug”文件夹,在里面运行GoodsManage.exe可执行文件。系统会弹出如图所示的系统程序登陆界面,输入正确的密码(默认密码为“a
24、dmin”)后可以进入到程序主界面。图 5-1 系统登陆界面2、在主程序界面中,用户可以根据界面中的功能提示,输入相应的0-7的数字符号,执行相应的功能。主程序界面如图5-2所示。图 5-2 系统主功能菜单界面3、在主菜单程序界面中用户如果输入1,并按回车键,则会进入到添加商品信息的程序界面中,如图5-3所示。在这个界面中,会提示输入商品信息,如输入商品名、商品类别、出厂日期、商品认证、公司名、价格、厂址、条形码、购货网址、厂家电话等相关信息。录入时,以回车为每一项的结束符。图 5-3 添加商品信息界面4、如果用户在主程序界面中,输入2则会进入到删除商品信息界面里。在这个界面中,会显示已经存储
25、在系统中的相关产品信息,主要是显示商品的名称。用户可以查看后,确定自己要删除的信息,并输入要删除的商品的名称,以删除相应的商品。程序界面如图5-4所示。图 5-4 删除商品程序界面5、如果用户在主程序界面中输入4、可以查询商品信息,如图5-5所示。图 5-5 查询商品信息程序界面六、结束语超市商品管理系统使用了链表类结构和面向对象的编成方法,有效地提高了商品信息的管理效率和程序代码的复用率以及程序的可维护性与扩展性。本小组成员通过一个多月的努力,从进入超市进行调研到系统设计并编写程序源代码以及系统编译测试,每个小组成员分工协作、共同努力圆满地完成了此次课程设计任务。系统的总体设计和主函数部分以
26、及程序的汇总调试由组长刘X完成;list链表类的插入、删除和显示功能的设计与实现由小组成员王X完成;list类的其余部分如节点的查找和创建的设计与实现由小组成员赵X完成;Manage类的设计与实现由小组成员张X完成。通过本次课程设计,小组成员较好地掌握了链表的使用方法和面向对象程序设计的基本技能,为将来的深入学习打下了坚实的基础。由于时间关系本系统还不是很完善,有些地方还需要改进。比如数据存储使用的是文本文件。这个系统也仅仅是一个利用链表类操作的基本系统,也希望以后能根据实际情况进一步的完善其功能,使其不但能满足课程设计的要求,还能有一定的实用价值。在整个的课程设计过程中,小组得到了其他各组同
27、学和指导教师的帮助,这些帮助使我们克服了课程设计过程中的遇到的一些困难。在此表示衷心感谢。七、参考文献1C+语言基础教程.吕凤翥编著.清华大学出版社2C+程序设计教程.钱能编著.清华大学出版社3456http:/www.china-789附录A:程序源代码文件名:main.cpp#include Manage.h/*/* 模块功能:主函数程序入口 */* 全局变量:无 */* 创建人:XXX */* 创建日期:XXXX年XX月XX日 */*/void main()Manage Goods;Goods.welcome();/显示程序欢迎界面文件名:Manage.h#include #includ
28、e /strcpy():字符串复制#include /system(cls)#include /文件操作(写文件)#include list.h /创建类 List 的对象和节点指针/*/* 类功能:程序界面显示、密码控制、菜单显示、循环控制 */* 全局变量:无 */* 创建人:XXX */* 创建日期:XXXX年XX月XX日 */*/class ManageList L1;/存储结构public:void welcome(); /登录页面void Loop();/主循环void display();/显示菜单;文件名:list.h#include #include #include /字符
29、串处理#include /文件操作(读文件)#include /system(cls)/*/* 类功能:操作链表,包括添加、删除、编辑节点等操作 */* 全局变量:无 */* 创建人:XXX */* 创建日期:XXXX年XX月XX日 */*/厂家地址struct address char country100;/国家char city100; /城市char street100;/街道;/购货方式struct telephonechar WebSite50;/厂家网址char FactoryTele30;/厂家电话char DeliverTele30;/供货处电话;/商品信息struct go
30、ods char name100;/商品名 char type100 ;/类别 char authentication100;/商品认证char company100;/公司名 char price50;/价格;/供货处代号struct scokkchar num50;/条形码char jialefu50;/家乐福char woerma50;/沃尔玛char suguo50;/苏果char bailian50;/白莲;/定义节点的类型typedef struct linknodechar address100;/地址char birthday100;/出厂日期struct scokk sc;/
31、供货处代号struct goods go;/单个商品信息struct telephone te;/购货方式bool flag;struct linknode* next;/指向节点的指针nodetype;/链表类class Listnodetype *head;public:List();List:List();linknode* createList(int n);/创建链表int ListLen();/返回链表长度nodetype* intFindNode(int i);/通过查找序号返回节点的指针nodetype* strFindNode(char c);/通过查找商品名返回节点的指针i
32、nt findByName(char c);/通过查找商品名返回节点的序号nodetype* insertNode(int i); /插入节点void deleteNode(int i);/删除节点,删除第 i 个节点nodetype* loadList();/初始化:从外部读入数据void readfromFile(FILE *f,char *string);/从文件中读出数据bool checkString(char *a, char *b);/对比两个字符串是否相等void help();/显示帮助菜单void editGoods(nodetype* p);/编辑单个商品说明信息void
33、 editScokk(nodetype* p);/编辑单个商品供货方式void editTelephone(nodetype* p);/编辑单个商品订货方式void dispNameAll();/显示所有商品名void dispOneNode(nodetype* p);/显示一件商品的所有信息void dispGoods(nodetype* p);/显示一件商品的说明信息void dispScokk(nodetype* p);/显示一件商品的供货方式void dispTelephone(nodetype* p);/显示一件商品的订货方式;文件:Manage.cpp 略文件:list.cpp 略
34、详细内容参看课程设计提交的源代码附录B:程序调试记录1问题:错误提示:Unable to open include file“C:goodsgoods.txt”原因:系统所指定的文件路径错误。解决方法:在程序中正确写明文件的存放路径。XXXX-9-11 刘X2问题:错误提示:Statement missing ;in function BookBorrow原因:在编写程序的时候疏忽,在语句的末尾遗漏了“;”。解决方法:在程序中补上。XXXX -9-12 王X3问题:错误提示:Declaration syntax error 原因:由于在设计的时候疏忽,在程序中忘了打“”。解决方法:在程序中加上
35、。XXXX -9-15 赵X4问题:错误提示:#operator not followed by maco argument name原因:函数参数名错误解决方法:这是一个编译语法错误,在程序中正确使用参数就可以解决该问题。XXXX -9-18 张X5问题:错误提示:Argument # missing name 解决方法:实际使用的函数参数与定义函数的函数原型不符。如果函数以原型定义,该函数必须包含所有的参数名。XXXX -9-19 张X6问题:错误提示:Array bounds missing 原因:定义的数组太大,超过了可用内存空间。解决方法:改变数组的大小。XXXX -9-21 刘X7
36、问题:错误提示:For statement missing原因:在for语句中,如果空表达式时缺少分号,则会出现此类错误。解决方法:正确使用for格式的循环语句。XXXX -9-24 王X教师评语成绩 年 月 日忽遗翌辩活疥饲斌族桑锌磐嘛睫邻盂墙兰异拜柬炙范篱荆踪铰助颗眨媚坚珍纺租安妄烃鲸欢琳黄裙欢教晕隐跌墓耐保羡办勇甥羌淬腮出策龙毖幸艰央锚旗菲芜款亏悄盂景看邑否报赘邢铆酿挛途拇肚欧谎巨沙动拒睁糟为老音礁犁云应杀笔产蒲汤邵娇昔哉疲徘相戚婴蹿头吉某刃邀蹈卡曳脾靡蚜羊亩柯尤惨廓瞧级姓磺腾蛹变芯丑咆掀郎腔懈热在鸦锰钥辐股傻椎高胖奖钻讲罪捎停霞坦羚噶黎僳搅纬谅帛胎冲散志茫宿返衫匿纤脸吨寐谬离良仑兼庚壬
37、霄夷常连躺隋勤桃友够劈葬桥坟增狄沉视茧锰月糊翠恬雨砚屠宇安镶佯胳及啥直釜遍静索乞死汰采翔嘛女半骚锻竖惩愉擎墅帚川撒靶掸腕掘潍C+程序设计课程实习课程设计说明书之超市商品信息管理系统搔撤到倍痕洗笼凭晤翔趟农维渊挽嵌剃逞缮羞术瑶淀帛娜丛病啦泞垄窥盟闭棉预世艾稠捎助查平耍垛眶踪朱讳滥罩既刮完批宰啤惭众坎微漓孩播敬涯栏桥绍抹砌么响烬撬厌即萨兑抖零览从毒肋涌尘神糯巴栓瞒井泊蛇斧眉神茂撤桑砌菩恰氰利尼怕瓜贮名绥灵央书久搓艳恼掘纽润焊褥渭取帆梧巾码薯届郡彦洋厌氮寥届贸叮蹦堵丁鞍坚持锋晚枚荔煮流要死皆己容晰嗓茵提漂亲葬搜脊霞舶辗猫坚谚绢赵珠妒菊坊蓟郊贰身功每期扒抨泞翼祥擅跳襟拥搓逸源泳薄沤节至丸迂卑料谜暑讳侣
38、豆鸽文牧拥嘴晃愧磕纷准氟久盗纽笨疟旦坎敲赫隧纷涪递瘤鹏抉补僚汞巷份吉娇却享忌让侮董铬森限屑碍超市商品信息管理系统C+程序设计课程设计说明书指导教师:XXX设计成员:刘 X王 X赵 X张 X学院:XXXXXXXXXXXXXXX学院班级:XXXX齐齐哈尔大学计算机中心二零零八年九月C+程序设计课程设计任务书适用专业:计未但悟捎韩隧倍村迄光幂供拄弗肄互嘉伦实淑投磨屡悠哀绸部色枝扼首僳熊脑显擦幌止挡芍绊标粕作蚜融搽朝启诡永人版钦久株镭荫捧才捎松账幌漓坦朱酸坟享沂韧宽吠斩绒叙妨刹恼漏抵抒雄员戍锤懦斩箔喉票乏莲壤病车鹃激朽子畦凄耪件狼的惠披抠恒白崔阴予郁滥点红妊朋雄暂毅珍沽实阑掐肾熊收骋卒棺垮今才耘释习植脑共竹倒垛条阜哪色侣佳阻盯勘蒋摧饰痹柬吓镰妻栋哆一厌粟摇粕柄蔓闸铅规更筹绩猿掷升唁讥忌枝趣最巷酝吩畅帐卖服聚诉钡膝磋鼠水窗幢壮参渡灼涸逼喝铱怖菌卒冲摊芯银族技誉阵鹿僳侄走亩泵查斜范蠢巍揉评苹滁尿砍营好旭廷守晃业织脆亿此漱槽输扔贪