售楼管理系统C语言课程设计报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

作者简介
大学期间,大二学习C语言课程,初次接触编程;大三学习C++课程,进步加深对计算机基本语言的认识。

摘要
房地产业的不断发展,利用电脑的先进管理手段,把售楼人员从一大堆合同中解放出来,将楼盘的销售推向“无纸化”已经成了解决当前房地产售楼管理的当务之急。

售楼管理系统就是为了实现这一目标而设计的,管理人员通过该系统可以及时了解楼盘的动态销售情况,还能充分利用电脑的可检索性、方便、快速地了解有关销售楼盘的其他各种详细资料,以便及时做出正确决策。

本系统主要实现以下功能:房产管理,管理所有的房产信息、对房产数据进行添加、修改、删除等操作。

此外,方便的查询功能可以使客户迅速地找到自己所需的房产信息;客户管理,拥有完善的客户管理功能,才能更加迅速地了解客户的需求动态。

客户管理功能要实现对客户各种数据的管理,包括客户和购买动向等。

收费管理,对于各种复杂的物业收费,完善的收费管理功能将使得收费管理更加便捷准确。

售楼管理,系统的核心,实现对楼盘销售的数据、合同签订情况、客户付费等情况的管理。

关键词:售房系统;房产管理;客户管理
一. 设计目的
1.通过本课程设计,强化上机动手能力,使自己在理论和实践的基础上进一步巩固《C
语言程序设计》课程学习的内容,掌握工程软件设计的基本方法
2.学会将知识应用于实际的方法,提高分析和解决问题的能力,增加综合能力
3.为后续各门计算机课程的学习打下坚实基础;为以后工作打下必要基础
二. 设计内容
1.选择自己所要做的课题,了解所做课题所要实现的功能;
2.根据所做课题的要求分块编写源代码;
3.分块编译、运行源代码,进行调整修改,最终形成完整可执行文件。

4.熟练掌握C语言的基本知识:数据类型(整形、实型、字符型、指针、数组、结构等);
运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的使用)等。

进一步掌握各种函数的应用。

三.概要设计
1.功能模块图;
(见下页)
2.各个模块详细的功能描述。

(1)main函数:对其它函数进行调用;
(2)楼盘信息结构体类型(struct loupans_type ):定义楼盘信息中的变量;
(3)读取信息模块(int read_file(struct loupans_type loupan[]) ):从文件中读取楼盘信息并进行操作;
(4)保存信息模块(void save_file(struct loupans_type loupan[],int sum) ):建立文本文件并对输入的信息进行保存;
(5)登录模块(int login(void) ):用户需先经过密码登录模块的验证方可进入主菜单,密码存在指定文件中;
(6)输入模块(int input(struct loupans_type loupan[]) ):录入楼盘相关信息;
(7)输出模块(void output(struct loupans_type loupan[],int sum) ):打印楼盘相关信息到屏幕;
(8)修改模块(void modify(struct loupans_type loupan[],int sum) ):对已保存的楼盘信息进行修改操作;
(9)查询模块(void reserch(struct loupans_type loupan[],int sum) ):对保存的楼盘信息进行查询;
(10)排序模块(void sort(struct loupans_type loupan[],int sum) ):对楼盘信息进行统计并按楼盘编号或工资高低进行排行;
(11)删除模块(int del(struct loupans_type loupan[],int sum) ):对已保存的楼盘信息进行删除操作;
(12)添加模块(void add(struct loupans_type loupan[],int *sum) ):对已保存的楼盘信息进行插入操作。

功能模块图
四.详细设计
1.各功能函数的数据流程图
登录模块(int login(void) ):
用户需先经过密码登录模块的验证方可进入主菜单,密码存在指定文件中;
输入模块(int input(struct loupans_type loupan[]) ):
录入楼盘相关信息;
输出模块(void output(struct loupans_type loupan[],int sum) ):
打印楼盘相关信息到屏幕;
修改模块(void modify(struct loupans_type loupan[],int sum) ):
对已保存的楼盘信息进行修改操作;
查询模块(void reserch(struct loupans_type loupan[],int sum) ):
对保存的楼盘信息进行查询;
排序模块(void sort(struct loupans_type loupan[],int sum) ):对楼盘信息进行统计并按楼盘编号或工资高低进行排行;
删除模块(int del(struct loupans_type loupan[],int sum) ):对已保存的楼盘信息进行删除操作;
添加模块(void add(struct loupans_type loupan[],int *sum) ):
对已保存的楼盘信息进行插入操作。

2.重点设计及编码。

for(i=0;i<sum-1;i++) // 利用字符串函数strcmp进行冒泡排序for(j=i+1;j<sum;j++)
{
if(strcmp(loupan[i].num,loupan[j].num)>0)
{
t=loupan[i];
loupan[i]=loupan[j];
loupan[j]=t;
}
}
while(ch!='\r') // 密码输入时加密 {
user1.password[i]=ch; printf("*"); if(ch==8) {
printf("\b\b \b\b"); i--; }
else i++; ch=getch(); fflush(stdin); }
五.测试数据及运行结果
1. 正常测试数据(3组)及运行结果;
新用户首先进行注册,注册成功后便可以进行登录,如遇退出程序,记住用户名和密码已让可以直接登录。

登陆成功后进入主菜单,输入12组正常测试数据显示结果如下图所示
排序前
排序后
排序
2.非正常测试数据(2组)及运行结果。

六.调试情况,设计技巧及体会
1.对自己的设计进行评价,指出合理和不足之处,提出改进方案;
(1)这个程序的主要功能包括登录、录入、查询、输出、添加、排序、修改、删除、
退出选项。

我认为各个模块都良好,就是登录时,若是先注册,再登录,密码错误就会直接退出系统;若是直接登录,则在三次密码输入错误后退出系统。

(2)再进行定义楼盘信息数组(struct loupans_type )时,其中的楼号(char num[8])、
价格(char price[20])时都用了字符串(char[ ]),这样在进行排序(冒泡)和查找(逐个)时运用字符串比较函数strcmp ,有效地提高了程序的运行效率。

查询 添加
2.非正常测试运行结果。

(3)这个设计总体还比较好,功能全面,可执行率高,各个模块功能都能相对稳定的实现。

但是也有些方面考虑的不是很周到需要再进一步强化、完善。

最终完成一个好的程序。

(4)程序虽然成功运行,也体现了一定的实用性,但还有诸多不足,比如程序的抗暴力性比较差,如果进行太多的非法输入或操作等程序不能保证其稳定性,还有程序的人性化还不够,离进入市场真正为小型公司服务还有很大的距离。

2.对设计及调试过程的心得体会。

(1)在这次编程中,让我真正体会到了学习的乐趣,为了把程序的问题解决,我必须自觉的查看和c语言有关的资料,课本或者和老师同学讨论,这让我对很多c语言中的问题有了更深刻的认识。

(2)实习让我明白了一个很重要的做事道理。

开始我对整个程序毫无头绪,无从下手。

但后来在编程过程中我发现只要事先构思好框架,然后一个模块一个模块的编写程序,这样编程也不显得很难了。

我想编程如此,做其他任何事情也应该这样——从小处着手才能成就大事!
(3)在实习过程中,我深刻体会到老师的对我完成程序重要作用。

刚开始时我对程序的调试一窍不懂,遇到出错只有求助老师。

完成这次课程实际对我们来说确实是一个挑战。

但在老师的帮助下我一步一步学会了如何调试,如何查找系统没有提示的错误,最终排除万难把程序搞定。

同时,我也体会到原来编程可以不那么枯燥乏味。

学会在VC++上变量要先定义完后再赋值等一系列编程知识,在检查时可以分段检查等技巧等等……在最后程序编出时的高兴是难以忘记的。

(4)虽然只有为期两周的实习,但是我的C语言还是得到了进一步的提高。

不过要想使自己的水平提高,还有待练习。

虽然实习结束了,但是以后在工作中可能会经常使用,这次的实习的确是一个很好的锻炼机会,它一定会使我受益终身的!(5)我在写程序时采取了前一天先在本子编好代码,第二天上机检查运行的模式,感觉还是不错!在头脑中先对程序的各项功能和大体模块要怎么引用有个大体的认识,而后在对各个分模块功能算法研究,就会做到有目的性,能提高时间利用率。

售楼管理系统
七.致谢
八.参考文献
【1】李强,贾云霞Visual C++项目开发实践。

中国铁道出版社,2003. 【2】王曙燕曹锰《C语言程序设计》。

科学出版社,2005年。

【3】谭浩强程序设计解题与上机指导。

清华大学出版社,2005,10.
八.附录:源代码(电子版)
10。

相关文档
最新文档