小区楼盘销售管理系统C课程设计

上传人:206****923 文档编号:90734483 上传时间:2019-06-15 格式:DOC 页数:38 大小:460.50KB
返回 下载 相关 举报
小区楼盘销售管理系统C课程设计_第1页
第1页 / 共38页
小区楼盘销售管理系统C课程设计_第2页
第2页 / 共38页
小区楼盘销售管理系统C课程设计_第3页
第3页 / 共38页
小区楼盘销售管理系统C课程设计_第4页
第4页 / 共38页
小区楼盘销售管理系统C课程设计_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《小区楼盘销售管理系统C课程设计》由会员分享,可在线阅读,更多相关《小区楼盘销售管理系统C课程设计(38页珍藏版)》请在金锄头文库上搜索。

1、程序设计综合课程设计 计算机学院计算机科学与技术专业程序设计综合课程设计报告 (2010/2011学年 第一学期)学生姓名: 学生班级: 学生学号: 指导教师: 2011年1月7日36小区楼盘销售管理程序目录一、课程设计目的和要求1二、课程设计任务内容21、课程设计内容:22、设计内容分析2三、详细设计说明31、函数功能说明、参数说明及函数流程图3(1)、int main()4(2)、void input(residence *);6(3)、void del(residence *);7(4)、void amend(residence *);10(5)、void display(residen

2、ce *);12(6)、void seek(residence *);132、编码153、测试15四、软件使用说明21五、课程设计心得与体会22附录1:参考文献23附录2:程序清单24一、课程设计目的和要求(1)巩固和加深学生对C+课程的基本知识的理解和掌握,通过这次课程设计,使学生从整体上把握一个学期以来所学的C+程序设计的内容,各种程序设计思路进行贯通,从而熟练掌握。(2)掌握C+编程和程序调试的基本技能。C+编程和程序调试是软件设计的重中之重,这两个部分占据了整个程序设计的80%以上的时间。掌握C+编程和调试,是极其重要的。(3)利用C+进行简单软件设计的基本思路和方法。今天我们的程序设

3、计只是一个很小很小的方面而已,从这次课程设计中,我们应该对软件设计有所认识,并且在今后的学习中要为此做出充分的准备。(4)提高运用C+解决实际问题的能力。任何知识的学习的最终目的都是解决实际问题。C+编程在解决实际问题上具有很大的作用。二、课程设计任务内容1、课程设计内容:小区楼盘销售管理程序 要用结构体数组/链表实现,用结构体表示每项记录,包含楼盘数据为:楼编号、单元号、房间号、朝向(如:南北、东西、东南等)、户型、平米单价、建筑面积、总价,售出状态,业务员等,其中总价=单价X 建筑面积。设计各个函数,分别实现以下功能: (1)录入:实现每套房源信息的输入,最好是追加方式; (2)删除:完成

4、房源信息的删除; (3)修改:允许对已经录入的数据重新进行编辑、修改; (4)显示:显示所有房源信息; (5)查询: a) 输入朝向、户型等数据,显示符合该条件的所有记录,最好做到条件动态添加; b)建筑面积范围,显示符合该条件的所有记录; c) 显示所有未售出房源情况; d)查询已售出房源的业务员姓名,成交额及总额 (6) 退出程序。 设计菜单,通过选择菜单调用以上各函数。要求:1)用C语言实现系统;2)函数功能要划分好(结构化程序设计);3)界面友好(良好的人机交互),加必要的注释;4)提供程序测试方案。2、设计内容分析输入项:楼编号、单元号、房间号、朝向(如:南北、东西、东南等)、户型、

5、平米单价、建筑面积、总价,售出状态,业务员等,其中总价=单价X 建筑面积。程序中也会有一些其他的循环条件输入。输出项:小区楼盘房源的相关信息,也就是输入项的用户所需数据。程序功能的实现:程序设计到数据的动态添加、删除、修改、和查询,应使用链表进行存储较为方便。而且应使用一个结构体来对应相应的房间,存储其相关信息。在使用链表上,很多地功能的实现都变得很简单了,条件查找上因该会比较麻烦,应多加考虑。三、详细设计说明1、函数功能说明、参数说明及函数流程图整个程序共包含6个函数:void input(residence *);/ 输入函数void del(residence *);/ 删除函数void

6、 amend(residence *);/ 修改函数void display(residence *);/ 显示所有信息void seek(residence *);/ 条件查找函数int main(); /主函数程序中使用了一个结构体,用于存储套房间的相应信息:struct residenceint lou,danyuan,fangjian; /楼号/单元号/房间号string chaoxiang,huxing; /朝向/户型float danjia,mianji,zongjia; /平米单价/面积/总价string zhuangtai,renyuan; /售出状态(yes/no)/销售人员

7、(没有的话为no,有的话输入相应的名字)residence *next; /指针用来指向链表的下一个结点;(1)、int main()函数功能说明:主函数,主要是实现两个功能:一是程序开始运行时的文件数据载入,二是显示主菜单文件载入时先判断文件是否存在,如果不存在,使用outf.open(data.txt,ios:out);进行新建;如果存在,从中读取数据并存入链表中。主菜单放在一个while循环中,通过swicth进行选择相应选项。函数参数说明:int i; 用于菜单选择,不同的值对应不同的菜单Int a; 用于记录载入的数据个数Residence *head,*p1,*p2; 用于链表的创

8、建,head是链表的头结点,p1,p2都是创建链表是的中间变量,起辅助传递作用。函数流程图:ifstream inf(data.txt,ios:in);ofstream outf;if(inf=0)outf.open(data.txt,ios:out);a+;cout数据文件不存在,将新建p1-loup1-danyuan.break;if(inf=0)p2-next=p1;p2=p1;cout共载入a-1个数据endlzongjia=p1-danjia*p1-mianji;来计算,减少用户的工作量。保存数据上,用户每输入完一个房源信息就存储一个,使用的是这个语句:outflou danyuan

9、 fangjian danjia mianji zongjia;outf chaoxiang huxing zhuangtai renyuannext=NULLbreak;p1=p1-next;YNp2=head;n!=0p1=new residence;p2-next=p1;cinp1-loup1-danyuan.outflou danyuancinn;outf.close;图2-2图2-2(3)、void del(residence *);函数功能说明:删除数据,并将删除后的数据保存在文件中将楼号、单元号。房间号等信息存储在l、d、f三个变量中,在对查看每个节点时,if(p1-lou=l&

10、p1-danyuan=d&p1-fangjian=f)进行判断。并且,通过判断i是否为零确定删除的数据的个数,如果i为零,提示没有改套房间。数据保存与输入部分是一样的。函数参数说明:residence *head1:存储原链表的头指针int l,d,f,n,i; l、d、f分别用于存储需要查询的房间的楼号、单元号、房间号;n用来判断是否结束修改操作返回主菜单;i用来判断是否删除成功。residence *p1,*p2;中间的指针变量函数流程图:p2=head;p1=head-next;1p1-lou=l&p1-danyuan=d&p1-fangjian=fp2-next=p1-next;del

11、ete p1;break;Yp2=p1;p1-next=NULLbreak;Yp1=p1-next;cinn;n!=0p1=head;1p1=p1-next;outflou next=NULL NNbreak;YN图2-3(4)、void amend(residence *);函数功能说明:修改数据,并将修改保存在文件中查找房间所在链表的位置与删除函数是一样的。提示用户是按相应键以做相应修改,并且可以循环修改:cout相应按键为:楼号 1, 单元号 2, 房间号 3, 平米单价 4, 建筑面积 5, 朝向 6, 户型 7, 售出状态 8, 业务员 9,退出 0endl;当用户按0想要结束修改时,程序退出修改模块,进入存储模块,存储完毕提示cout修改已保存ldf;while(1)p2=head;p1=head-next;p1-lou=l&p1-danyuan=d&p1-fangjian=fcini;switch (i)while(i!=

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号