C小区物业管理系统课程设计

合集下载

C++课程设计小区物业管理系统

C++课程设计小区物业管理系统

目录一.编程目的: .......................... 错误!未定义书签。

二.设计要求: .......................... 错误!未定义书签。

三.各函数功能说明: .................... 错误!未定义书签。

四.流程图: ............................ 错误!未定义书签。

五.总结:.............................. 错误!未定义书签。

参考书目:.............................. 错误!未定义书签。

1.程序题目要求:1.1.课程设计目的:用C++语言对小区物业管理系统进行程序编程,并且通过以前的学习及查看相关资料,按着题目要求编写程序,进一步加强对编程的训练,使得自己掌握知识要点,将其书本知识转化为实际应用当中。

1.2课程设计题目:小区物业管理系统1.3.课程设计题目描述和要求:1)、有工作界面(菜单或按钮方式)2)、以住户为主,录入房号,户主名,用水量(单位方),用电量(单位度),物业费(交否),入主日期等字段;所录入的数据(至少包括6条)存入一个文本文件中;能根据情况调出数据.3)、具有按房号排序功能.4)、能有插入功能,并按房号排序.5)、具有删除记录功能.6)、当某一住户买水或买电后,其相应用水量,用电量字段应增加;交物野费后应改变其相应字段的值.7)、具有查询功能(1)按房号, 户主名进行用水量和用电量的查询.(2)按物业费交否查询住户情况,当未交的,可报警提示.8)、统计出每栋楼房的入主情况(即空房多少).9)、能在屏幕上输出所有客户的信息.2.课程设计报告内容:2.1:程序的简单介绍整个程序采用类与链表相结合的编程方法一共完成了8个功能,全体用了一个类,一个友元成员函数和一个主函数。

在每次运行完成时,要退出黑屏才能保存所输入的数据。

再根据输入的数据,来确定功能的执行。

C语言程序设计-物业管理系统

C语言程序设计-物业管理系统

C语言程序设计-物业管理系统#include "stdio.h"#include "stdlib.h"#include "string.h"#define M 5struct People{int a;char ming[30];char xiang[30];int b;int c;}P[M];void main(){int a=1;void menu_1(int a);menu_1(a);}void menu_1(int a){void menu_2();void menu_3();void biao_1();int loop=1;while(loop){system("cls");printf("\t WELCOME \n");printf("\t--------------------(*^◎^*)--------------------\n"); printf("\t- -\n");printf("\t- -\n");printf("\t- 1.小区用户管理-\n");printf("\t- 2.物业收费管理-\n");printf("\t- 3.生成小区住户收费报表-\n");printf("\t- 4.退出-\n");printf("\t- -\n");printf("\t- -\n");printf("\t-------------------o(╯□╰)o-------------------\n"); printf("\t END \n");printf("请输入所要选择内容的序号(1-4):[ ]\b\b");scanf("%d",&a);switch(a){case 1:menu_2();break;case 2:menu_3();break;case 3:biao_1();break;case 4:exit(0);break;default :exit(0);}getchar();getchar();}}void menu_2(){void scan_1();void add_1();void rewrite_1();void delete_1();void seek_1();int a;system("cls");printf("\t *欢迎使用小区用户管理系统* \n");printf("\t-----------------↖(^ω^)↗---------------------\n"); printf("\t- -\n");printf("\t- -\n");printf("\t- 1.浏览用户资料-\n");printf("\t- 2.录入用户资料-\n");printf("\t- 3.更改用户资料-\n");printf("\t- 4.删除用户资料-\n");printf("\t- 5.查找用户资料-\n");printf("\t- -\n");printf("\t- -\n");printf("\t-----------------O(∩_∩)O~---------------------\n"); printf("\t END \n");printf("请输入所要选择内容的序号(1-3):[ ]\b\b");scanf("%d",&a);switch(a){case 1:scan_1();break;case 2:add_1();break;case 3:rewrite_1();break;case 4:delete_1();break;case 5:seek_1();break;default:exit(0);}}void scan_1()FILE *fp;char ch;if((fp=fopen("e:\\data.txt","r+"))==NULL) {printf("cannot open the file!");exit(0);}ch=fgetc(fp);while(ch!=EOF){putchar(ch);ch=fgetc(fp);}fclose(fp);printf("\n");void add_1(){FILE *fp;if((fp=fopen("e:\\data.txt","a"))==NULL) {printf("文件不能打开/n");exit(0);}else{int i;int num;printf("输入所要输入数据的数目="); scanf("%d",&num);for(i=2;i<num+2;i++)< p="">printf("编号:");scanf("%d",&P[i].a);printf("姓名:");scanf("%s",P[i].ming);printf("项目:");scanf("%s",P[i].xiang);printf("已交:");scanf("%d",&P[i].b);printf("已欠:");scanf("%d",&P[i].c);fprintf(fp,"%d %s %s %d %d",P[i].a,P[i].ming,P[i].xiang,P[i].b, P[i].c);fprintf(fp,"\n");}fclose(fp);}}void savein_1()int i;FILE *fp;fp=fopen("e:\\data.txt","r");for(i=0;i<3;i++)fscanf(fp,"%d %s %s %d %d",&P[i].a,P[i].ming,P[i].xiang,&P[i ].b,&P[i].c);fclose(fp);}void rewrite_1(){FILE *fp;void savein_1();if( (fp=fopen("e:\\data.txt","a"))==NULL){printf("文件不能打开/n");exit(0);}else{int i=0,num;savein_1();printf("输入所要更改的编号[ ]\b\b");scanf("%d",&num);while(P[i].a!=num)i++;printf("请输入所要的新标号\n");scanf("%d",&P[i-1].a);printf("请输入所要的姓名\n");scanf("%s",P[i-1].ming);printf("请输入所要的收费项目\n");scanf("%s",P[i-1].xiang);printf("请输入所欠的物业费\n");scanf("%d",&P[i-1].b);printf("请输入已交的物业费\n");scanf("%d",&P[i-1].c);fp=fopen("e:\\data.txt","w+");i=0;dofprintf(fp,"%d %s %s %d %d",P[i].a,P[i].ming,P[i].xiang,P[i].b, P[i].c);i++;}while(i<=2);fclose(fp);}}void delete_1(){FILE *fp;void savein_1();int num,i=0;printf("请输入所要删除人的编号:[ ]\b\b");scanf("%d",&num);savein_1();while(P[i].a!=num)i++;for(i;i<=5;i++){P[i].a=P[i+1].a;strcpy(P[i].ming,P[i+1].ming);strcpy(P[i].xiang,P[i+1].xiang);P[i].b=P[i+1].b;P[i].c=P[i+1].c;}fp=fopen("e:\\data.txt","w");i=0;do{fprintf(fp,"%d %s %s %d %d",P[i].a,P[i].ming,P[i].xiang,P[i].b, P[i].c);i++ ;}while(i<=5);fclose(fp);}{void savein_1();int num,i=0;printf("请输入所要查找的人的编号:[ ]\b\b");scanf("%d",&num);savein_1();while(i!=num)i++;printf("%d %s %s %d %d",P[i-1].a,P[i-1].ming,P[i-1].xiang,P[i-1].b,P[i-1].c); }void menu_3(){void scan_2();void add_2();void rewrite_1();void delete_2();int a;system("cls");printf("\t *欢迎使用物业收费管理系统* \n");printf("\t------------------(⊙_⊙?)----------------------\n");printf("\t- -\n");printf("\t- -\n");printf("\t- 1.浏览小区收费项目-\n");printf("\t- 2.增加小区收费数目-\n");printf("\t- 3.更改小区收费项目-\n");printf("\t- 4.删除小区收费项目-\n");printf("\t- -\n");printf("\t- -\n");printf("\t-------------------(⊙o⊙)----------------------\n"); printf("\t- END -\n");printf("请输入所要选择内容的序号(1-3):[ ]\b\b");scanf("%d",&a);switch(a){case 1:scan_2();break;case 2:add_2();break;case 3:rewrite_1();break;case 4:delete_2();break;default:exit(0);}}void scan_2(){FILE *fp;char ch;if((fp=fopen("e:\\data.txt","r+"))==NULL){printf("cannot open the file!");exit(0);}ch=fgetc(fp);while(ch!=EOF){putchar(ch);ch=fgetc(fp);}fclose(fp);}void add_2(){int i,num;FILE *fp;if((fp=fopen("e:\\data.txt","a"))==NULL){printf("文件不能打开/n");exit(0);}else{printf("输入所要输入数据的数目=");scanf("%d",&num);for(i=3;i<num+3;i++)< p="">{printf("编号:");scanf("%d",&P[i].a);printf("姓名:");scanf("%s",&P[i].ming);printf("项目:");scanf("%s",&P[i].xiang);printf("已交:");scanf("%d",&P[i].b);printf("已欠:");scanf("%d",&P[i].c);fprintf(fp,"%d %s %s %d %d",P[i].a,P[i].ming,P[i].xiang,P[i].b, P[i].c);}fclose(fp);printf("\n");}}/*void rewrite_2(){FILE *fp;if((fp=fopen("e:\\data.txt","w"))==NULL) {printf("文件不能打开/n");exit(0);}else{ int i,num;printf("输入所要输入数据的数目="); scanf("%d",&num);for(i=3;i<num+3;i++)< p="">{printf("项目:");scanf("%s",&P[i].xiang);fprintf(fp,"%s",P[i].xiang);fprintf(fp,"\n");}fclose(fp);}}*/void delete_2(int d){FILE *fp;void savein_1();int num,i=0;printf("请输入所要删除人的编号:[ ]\b\b");scanf("%d",&num);savein_1();while(i!=num)i++;for(i=num;;i++){P[i].a=P[i+1].a;strcpy(P[i].ming,P[i+1].ming);strcpy(P[i].xiang,P[i+1].xiang);P[i].b=P[i+1].b;P[i].b=P[i+1].b;}fp=fopen("e:\\data.txt","a");do{i=0;fprintf(fp,"%d %s %s %d %d",P[i].a,P[i].ming,P[i].xiang,P[i].b, P[i].c);i++ ;}while(i<=5);fclose(fp);}void biao_1(){FILE *fp;char ch;if((fp=fopen("e:\\data.txt","r+"))==NULL){printf("cannot open the file!");exit(0);}ch=fgetc(fp); while(ch!=EOF) {putchar(ch);ch=fgetc(fp);}fclose(fp);printf("\n");}</num+3;i++)<> </num+3;i++)<> </num+2;i++)<>。

C语言课程设计报告--物业管理系统

C语言课程设计报告--物业管理系统

C语言课程设计报告--物业管理系统中国地质大学本科生课程论文封面课程名称计算机高级语言课程设计(C)教师姓名本科生姓名本科生学号本科生专业网络工程所在院系计算机学院类别:工科日期:16/1/20XX课程设计评语对课程论文的评语:平时成绩:课程论文成绩:总成绩:评阅人签名:注:1、无评阅人签名成绩无效;2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效;3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。

摘要:本文完成了综合练习中第20题物业管理系统的编程,程序用于小区的管理,管理的项目包括小区住户管理、物业收费项目管理、物业收费管理,并用文存储相关信息。

文中给出了需求分析、功能模块图、数据结构、详细设计、程序运行结果、总结和致谢。

目录课程设计评语2作者简介及摘要3目录41.课程论文题目52.总体设计63.详细设计84.程序运行结果125.编程中遇到的困难及解决方法166.总结心得及良好建议177.致谢188.参考文献191.课程论文题目:物业管理系统1.1问题描述物业管理系统问题的描述是:用于小区的物业管理,管理的项目包括小区住户管理、物业收费项目管理、物业收费管理。

要求用文存储相关信息。

1.2基本要求(1)可随时浏览、录入和更改小区住户、收费项目等数据。

(2)随时可增、删、改、查收费项目及其标准。

生成小区住户收费报表(包括全部、已交、欠交)。

1.3需求分析住户信息、物业收费信息用一个文存储,因而要提供文的输入/输出操作;另外,还要提供键盘式选择菜单以实现功能选择。

2.总体设计:2.1总体思路整个管理系统设计为住户信息、物业收费信息的浏览、增加、更改、删除等模块。

2.2功能模块图物业管理系统更改删除增加浏览计算图2-2功能模块图2.3数据结构设计根据问题描述,将住户信息、物业收费信息放在一个resident结构体内。

结点结构:fhbjfbaftcfyjzjqj定义如下:#defineN50intM;structresident{intfh;/*房号*/charname[10];/*户主姓名*/ intbjf;/*保洁费*/baf;/*保安费*/inttcf;/*停车费*/intyj;/*已交*/intzj;/*总计*/intqj;/*欠交*/}s[N];/*s[N]中每个数组元素对应一个住户*/ 将住户信息储存在ZHSFBB.txt文本文中内容及格式:wang865080120102zhang77127 201 zhao 805060 150 202 shang 705510 100 301 zhou 886655 130 30256 89 13 90 401 sun 46 667980 402 tian 50 80 40 140 501 fang 60 70 30502chen90604088601bian404040110602wu808040803.详细设计3.1数据读入模块:小区住户信息采用结构体形式,把一个住户的信息作为结构体成员,若要存放若干个住户信息就要用到结构体数组,一条记录对应一户住户的信息,既符合习惯也方便信息管理。

小区物业管理系统设计方案

小区物业管理系统设计方案

小区物业管理系统设计方案目录智能小区物业管理系统............................................. 错误!未定义书签。

第1章绪论 .. (1)1.1背景 (1)1.2意义 (1)1.3研究方法和研究内容 (1)第2章需求分析 (3)2.1可行性分析 (3)2.1.1经济可行性 (3)2.1.2 技术可行性 (3)2.1.3 操作可行性 (4)2.1.4 社会可行性 (4)2.2 业务流程分析 (4)2.3 性能分析 (5)2.3.1多层结构设计 (5)2.3.2 操作简单 (5)2.3.3代码可读性好 (5)2.4 总体设计原则 (5)2.4.1易用性原则 (5)2.4.2实用性原则 (5)2.4.3技术先进性和成熟性原则 (5)第3章系统分析 (6)3.1 数据流图 (6)3.2 数据字典 (6)第4章系统设计 (8)4.1 系统功能设计 (8)4.2 数据库设计 (8)4.2.1 概念结构设计 (9)4.2.2 数据库表设计 (10)4.3 系统开发工具和开发模式的设计 (12)4.3.1 系统开发工具 (12)4.3.2 系统开发模式 (13)第5章系统实现 (14)5.1 登录管理模块 (14)5.1.1 登录模块 (14)5.1.2 程序流程 (15)5.2 系统属性界面 (15)第6章系统测试 (17)6.1 系统测试的定义 (17)6.2 系统测试的目的及意义 (17)6.3 系统测试的重要性 (17)6.4 系统测试的常用方法 (18)6.5 系统运行情况 (19)结论 (20)附录 (21)第1章绪论1.1毕业设计选题背景目前物业管理是一个新兴的服务行业,随着人们生活水平的提高,在选择住房时,必须要有好的物业管理做保证。

这样要求小区管理者对物业管理进行宏观和微观的细致管理,这就为我们设计小区物业管理系统提供了市场需要。

使用计算机对企业单位的各项信息进行管理,极大地提高工作的效率,也是企业的科学化、正规化管理。

C 小区物业管理系统课程设计

C 小区物业管理系统课程设计

华科学院信息管理与信息系统专业《程序设计综合课程设计》报告(2011/2012学年第一学期)学生姓名:王奥辉学生班级:信息管理102202H学生学号:17指导教师:薛颂东20011年12月30日小区物业管理目录1、课程设计的目的及要求 (4)2、课程设计任务 (5)3、设计内容 (6)4、程序的编码与实现 (25)5、课程设计心得与体会 (28)6、程序源代码 (29)第一章课程设计的目的及要求课程设计目的本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《程序设计基础(C++)》课程后进行的一次全面的综合设计。

本课程设计的目的和任务:1. 巩固和加深学生对C++语言课程的基本知识的理解和掌握。

2. 掌握C++语言编程和程序调试的基本技能。

3. 利用C++语言进行基本的软件设计。

4. 掌握书写程序设计说明文档的能力。

5. 提高运用C++语言解决实际问题的能力。

课程设计要求进一步巩固《C++程序设计》所学的知识,特别加强数组,指针,结构体,文件数据类型的应用,熟悉面向过程的结构化和面向对象可视化程序设计方法,培养结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解,锻炼程序设计的能力,以及用C/C++ 语言解决实际问题的能力,为以后后续课程的学习打好基础。

第二章课程设计任务课程设计题目小区物业管理系统课程设计实现可以通过操作输入、增加、修改、浏览、查询、删除小区内住户信息,来实现对小区内物业的管理。

第三章设计内容需求分析小区物业信息管理系统是针对当代社会,住宅小区越来越成为居住的主流这一市场需要而应运而生的,是为小区管理着和小区用户更好的维护小区各项物业管理业务处理工作而开发的管理软件。

小区管理系统包括小区成员的所住单元、住户号、工作单位、姓名、电话号码等信息;——小区管理系统主要提供以下功能:1.系统的登录界面(主要包括用户名、密码的设置、新用户的创建、密码的修改等);2.系统以菜单方式工作3.住户信息录入功能——输入4.住户信息增加、修改、查询功能(1)按住户名(2)按房间号5.住户信息浏览功能——显示6.住户信息删除功能总体设计图3-2-1 开始登录界面整个系统除了主函数外,另外还有6个函数,实现六大功能:增加数据功能、修改数据功能、信息查询功能、信息浏览功能、信息删除功能、退出系统功能。

c语言课程设计报告物业费管理系统

c语言课程设计报告物业费管理系统

计算机程序设计基础(C语言)课程设计说明书设计题目:物业费管理系统班级:姓名:学号:2021年4月设计任务书完成小区物业费用管理系统设计。

功能要求:(1)新住户信息的添加。

(户主姓名、性别、身份证号、联系电话、楼号、单元号、房号、平米数、每平米物业价格、应缴纳物业费)(2)修改住户信息的功能。

(3)删除住户信息的功能。

(4)应缴物业费自动生成。

每月1号,自动生成本月份的物业费。

如果该住户之前的物业费未交清,则本月物业费与之前拖欠费用进行累加,为该用户应缴纳的物业费。

(5)缴费功能。

根据用户缴纳金额,修改“应缴纳物业费”。

(6)统计功能:能够按楼号分类统计所有未交清物业费的记录。

能够按拖欠款项多少,对所有用户信息进行从大到小排序。

(7)用菜单进行管理目录一、需求分析 (4)二、总体设计 (4)(一)总体思路 (4)(二)完整过程 (4)(三)函数定义 (5)三、详细设计 (8)四、程序运行结果测试与分析 (9)五、结论与心得 (13)一、需求分析完成小区物业费用管理系统设计。

功能要求:(1)将新住户信息的添加到文件中。

(建立结构体,包括户主姓名、性别、身份证号、联系电话、楼号、单元号、房号、平米数、每平米物业价格、应缴纳物业费)(2)修改住户信息的功能。

(3)删除住户信息的功能。

(4)计算物业费,物业费=本月物业费+之前拖欠的物业费(5)缴费功能。

根据用户缴纳金额,修改“应缴纳物业费”。

(6)统计功能:计算拖欠款项,并对所有用户信息进行从大到小排序。

(7)用菜单进行管理二、总体设计(一)总体思路:用选择语句实现各个功能,每一个功能可以用一个函数实现,因此还需要编辑几个函数。

(二)完整过程:用NEW_oj()函数判断文件是否为空,若是,则用UI_show()函数输入用户信息,若不为空,清屏并转入菜单。

输入一个整型数,用switch函数选择功能,1 进入NEW_in()函数添加新用户信息,2进入OLD_adjust()函数修改住户信息,3进入OLD_delete()函数删除住户信息,4进入 OLD_putmoney()函数进行缴费功能,计算住户的物业费,5进入OLD_showmoney()函数,进行排序功能,按拖欠款项多少,对所有用户信息进行排序,6进入void EXIT()函数,退出程序若输入其他,则反馈错误实现完功能后清屏并用system("pause")返回菜单。

c语言课程设计物业

c语言课程设计物业

c语言课程设计物业一、教学目标本课程的教学目标是让学生掌握C语言的基本语法、数据结构和算法,能够运用C语言编写简单的程序,培养学生的编程思维和解决问题的能力。

具体分为以下三个部分:1.知识目标:学生需要掌握C语言的基本语法、数据结构(如数组、链表、树等)和算法(如排序、查找等)。

2.技能目标:学生能够运用C语言编写简单的程序,解决实际问题,培养编程思维和解决问题的能力。

3.情感态度价值观目标:学生通过课程学习,能够培养对计算机科学的兴趣和热情,增强自我学习的能力和团队协作的精神。

二、教学内容根据教学目标,本课程的教学内容主要包括C语言的基本语法、数据结构和算法。

具体安排如下:1.C语言的基本语法:包括变量、数据类型、运算符、控制语句、函数等。

2.数据结构:包括数组、链表、栈、队列、树等。

3.算法:包括排序算法(冒泡排序、选择排序、插入排序等)、查找算法(顺序查找、二分查找等)等。

三、教学方法为了达到教学目标,本课程将采用多种教学方法,如讲授法、讨论法、案例分析法、实验法等。

具体安排如下:1.讲授法:用于讲解C语言的基本语法、数据结构和算法。

2.讨论法:用于引导学生探讨问题,培养学生的编程思维和解决问题的能力。

3.案例分析法:通过分析实际案例,让学生掌握C语言在实际问题中的应用。

4.实验法:让学生动手编写程序,巩固所学知识,提高编程能力。

四、教学资源为了支持教学内容和教学方法的实施,本课程将选择和准备以下教学资源:1.教材:《C语言程序设计》等。

2.参考书:《C Primer Plus》、《C和指针》等。

3.多媒体资料:教学PPT、视频教程等。

4.实验设备:计算机、网络等。

通过以上教学资源,为学生提供丰富的学习体验,帮助他们更好地掌握C语言编程技能。

五、教学评估本课程的评估方式包括平时表现、作业、考试等,旨在全面、客观、公正地评价学生的学习成果。

具体安排如下:1.平时表现:包括课堂参与度、提问回答、小组讨论等,占总评的20%。

课程设计小区物业管理系统

课程设计小区物业管理系统

课程设计小区物业管理系统一、课程目标知识目标:1. 让学生理解小区物业管理的概念、功能及重要性。

2. 让学生掌握小区物业管理系统的主要模块及其功能。

3. 让学生了解并掌握数据库管理、信息处理等基本知识。

技能目标:1. 培养学生运用所学知识设计并实现一个简单的小区物业管理系统。

2. 培养学生运用数据库技术进行数据存储、查询和更新的能力。

3. 培养学生通过小组合作、沟通与协作解决问题的能力。

情感态度价值观目标:1. 培养学生对信息技术学科的兴趣和热情,提高其学习积极性。

2. 培养学生具备良好的信息素养,关注社会发展,关爱社区。

3. 培养学生团队协作精神,尊重他人意见,善于倾听和表达。

课程性质分析:本课程为信息技术学科,结合小区物业管理系统的实际应用,旨在让学生将所学知识应用于解决实际问题。

学生特点分析:六年级学生已具备一定的信息素养和计算机操作能力,对新鲜事物充满好奇,喜欢动手实践,但需加强团队协作和沟通能力的培养。

教学要求:1. 结合学生特点和课程性质,注重理论与实践相结合,提高学生的实际操作能力。

2. 注重培养学生的团队协作和沟通能力,提高解决问题的综合素质。

3. 关注学生的学习过程,及时进行教学反馈和调整,确保课程目标的实现。

二、教学内容1. 小区物业管理基本概念:介绍小区物业管理的定义、功能、作用及发展趋势。

相关教材章节:第一章 物业管理概述2. 小区物业管理系统模块:详细讲解小区物业管理系统的主要模块,如物业信息管理、住户信息管理、费用管理、报修管理等。

相关教材章节:第二章 物业管理系统模块及其功能3. 数据库管理:介绍数据库的基本概念,教授如何使用数据库管理软件(如Access)进行数据存储、查询和更新。

相关教材章节:第三章 数据库管理4. 信息处理技术:讲解信息处理的基本方法,如信息的收集、整理、存储、传输等。

相关教材章节:第四章 信息处理技术5. 小组合作与项目管理:培养学生团队协作能力,教授项目管理的初步知识,如项目计划、执行、监控和总结。

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

C小区物业管理系统课程设计Standardization of sany group #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#华科学院信息管理与信息系统专业《程序设计综合课程设计》报告(2011/2012学年第一学期)学生姓名:王奥辉学生班级:信息管理102202H学生学号:17指导教师:薛颂东20011年12月30日小区物业管理目录1、课程设计的目的及要求 (4)2、课程设计任务 (5)3、设计内容 (6)4、程序的编码与实现 (25)5、课程设计心得与体会 (28)6、程序源代码 (29)第一章课程设计的目的及要求课程设计目的本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《程序设计基础(C++)》课程后进行的一次全面的综合设计。

本课程设计的目的和任务:1. 巩固和加深学生对C++语言课程的基本知识的理解和掌握。

2. 掌握C++语言编程和程序调试的基本技能。

3. 利用C++语言进行基本的软件设计。

4. 掌握书写程序设计说明文档的能力。

5. 提高运用C++语言解决实际问题的能力。

课程设计要求进一步巩固《C++程序设计》所学的知识,特别加强数组,指针,结构体,文件数据类型的应用,熟悉面向过程的结构化和面向对象可视化程序设计方法,培养结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解,锻炼程序设计的能力,以及用C/C++ 语言解决实际问题的能力,为以后后续课程的学习打好基础。

第二章课程设计任务课程设计题目小区物业管理系统课程设计实现可以通过操作输入、增加、修改、浏览、查询、删除小区内住户信息,来实现对小区内物业的管理。

第三章设计内容需求分析小区物业信息管理系统是针对当代社会,住宅小区越来越成为居住的主流这一市场需要而应运而生的,是为小区管理着和小区用户更好的维护小区各项物业管理业务处理工作而开发的管理软件。

小区管理系统包括小区成员的所住单元、住户号、工作单位、姓名、电话号码等信息;——小区管理系统主要提供以下功能:1.系统的登录界面(主要包括用户名、密码的设置、新用户的创建、密码的修改等);2.系统以菜单方式工作3.住户信息录入功能——输入4.住户信息增加、修改、查询功能(1)按住户名(2)按房间号5.住户信息浏览功能——显示6.住户信息删除功能总体设计图3-2-1 开始登录界面整个系统除了主函数外,另外还有6个函数,实现六大功能:增加数据功能、修改数据功能、信息查询功能、信息浏览功能、信息删除功能、退出系统功能。

各个函数的详细设计说明分别如下:1. 增加数据功能:基本原理是用指针*P来创建一个存储单元,来存储住户的信息:住户的姓名、性别、电话号码、身份证号码。

然后再和链变相连,有结构体链表来存储所有住户的信息。

*MP指针只想最后一个结构体链表的最后一个结构体。

2.修改数据功能:与增加数据功能输入方式一样3.信息浏览功能:用printf来显示住户的信息,并且用for循环来实现所有的住户信息都能显示出。

void Display(people people[],int n) /*显示所有记录*/{ int i;printf("\t\t\t-----------------------------------\n"); /*格式头*/printf("\t\t\tnumber name tel\n");printf("\t\t\t-----------------------------------\n");for(i=1;i<n+1;i++) /*循环输入*/{ printf("\t\t\t%-16s%-15s%d\n",people[i-1].num,people[i-1].name,people[i-21].tel);if(i>1&&i%10==0) /*每十个暂停*/{printf("\t\t\t-----------------------------------\n"); /*格式*/printf("\t\t\t");system("pause");printf("\t\t\t-----------------------------------\n"); } }printf("\t\t\t");system("pause");}4.信息删除功能:首先用指针找到此住户的前驱和后续,然后让前驱的NEXT指向后续,就删除所要删除的信息了。

首先用指针找到此住户的前驱和后续,然后让前驱的NEXT指向后续,就删除所要删除的信息了。

int Delete_a_record(people people [],int n) /*按姓名查找,删除一条记录*/ { char s[20];int i=0,j;printf("\t\t\ttell me his(her) name:"); /*交互式问寻*/scanf("%s",s);while(strcmp(people[i].name,s)!=0&&i<n) i++; /*查找判断*/if(i==n){ printf("\t\t\tnot find!\n"); /*返回失败信息*/return(n); }for(j=i;j<n-1;j++) /*删除操作*/{ strcpy(stud[j].num, people [j+1].num);strcpy(stud[j].name, people stud[j+1].name);people [j].tel= people [j+1].tel; }printf("\t\t\tDelete Successed!\n"); /*返回成功信息*/return(n-1); }void Query_a_record(people people[],int n) /*查找并显示一个记录*/{ char s[20];int i=0;printf("\t\t\tinput his(her) name:"); /*交互式输入*/scanf("\t\t\t%s",s);while(strcmp(people[i].name,s)!=0&&i<n) i++; /*查找判断*/if(i==n){ printf("\t\t\tnot find!\n"); /*输入失败信息*/return; }printf("\t\t\this(her) number:%s\n",people[i].num); /*输出该学生信息*/ printf("\t\t\this(her) tel:%d\n",people[i].tel); }int AddfromText(people people[],int n) /*从文件中读入数据*/{ int i=0,num;FILE *fp; /*定义文件指针*/char filename[20]; /*定义文件名*/printf("\t\t\tInput the filename:");scanf("\t\t\t%s",filename); /*输入文件名*/if((fp=fopen(filename,"rb"))==NULL) /*打开文件*/{ printf("\t\t\tcann't open the file\n"); /*打开失败信息*/printf("\t\t\t");system("pause");return(n); }fscanf(fp,"%d",&num); /*读入总记录量*/while(i<num) /*循环读入数据*/{ fscanf(fp,"%s%s%d",peole[n+i].num,people[n+i].name,&people[n+i].tel); i++; }n+=num;fclose(fp); /*关闭文件*/ printf("\t\t\tSuccessed!\n");printf("\t\t\t"); system("pause"); return(n); }void WritetoText(Student people[],int n) /*将所有记录写入文件*/ { int i=0;FILE *fp; /*定义文件指针*/ char filename[20]; /*定义文件名*/printf("\t\t\tWrite Records to a Text File\n"); /*输入文件名*/ printf("\t\t\tInput the filename:"); scanf("\t\t\t%s",filename);if((fp=fopen(filename,"w"))==NULL) /*打开文件*/ { printf("\t\t\tcann't open the file\n"); system("pause"); return; }fprintf(fp,"%d\n",n); /*循环写入数据*/ while(i<n){ fprintf(fp,"%-16s%-15s%d\n",people[i].num,people[i].name,people[i].tel); i++; }fclose(fp); /*关闭文件*/printf("Successed!\n"); /*返回成功信息*/ }6.退出系统功能。

详细设计do{cout<<"请输入您要增加的住户的姓名:"<<endl;cin>>name;cout<<endl<<" 请输入住户性别:";cin>>sex;cout<<endl<<" 请输入其房间号:";cin>>room_num;cout<<endl<<" 请输入其车库号:";cin>>parking;cout<<endl<<" 请输入联系电话:";cin>>phone_num;cout<<endl<<" 请输入身份证号:";cin>>ID_num;cout<<endl;out<<setw(20)<<name<<setw(5)<<sex<<setw(10)<<room_num<<setw(10)<<parking<<setw(20)<<phone_num<<setw(20)<<ID_num; 住户名查询"<<endl<<endl<<" 2.按房间号查询"<<endl<<endl;int k;cin>>k;switch(k)case 1: ame,na)==0){flag=1;k=i;}}if(flag==1){("E:\\",ios::out);(0,ios::beg);if(n>1){for(i=0;i<k;i++)out<<setw(2)<<liv[i].name<<setw(5)<<liv[i].sex<<setw(10)<<liv[i].ro om_num<<setw(10)<<liv[i].parking<<setw(20)<<liv[i].phone_num<<setw( 20)<<liv[i].ID_num;for(i=k+1;i<n;i++)out<<setw(2)<<liv[i].name<<setw(5)<<liv[i].sex<<setw(10)<<liv[i].ro om_num<<setw(10)<<liv[i].parking<<setw(20)<<liv[i].phone_num<<setw( 20)<<liv[i].ID_num;cout<<" 信息删除成功"<<endl<<endl;}if(n=1){}();}elsecout<<" 您要删除的住户不存在!"<<endl<<endl;cout<<" 您想继续删除吗 y / n :"<<endl;cin>>c;cout<<endl;if(c=='n')break;if(c!='y'&&c!='n'){cout<<" 指令错误!请重新输入!"<<endl<<" ";cin>>c;}}while(c=='y');break;}6)退出系统{cout<<"Bye bye! See you next time."<<endl<<endl;cout<<" 冯勇制作"<<endl<<endl<<endl;exit(0); }break; }}住户名查询"<<endl<<endl<<" 2.按房间号查询"<<endl<<endl;int k;cin>>k;switch(k)case 1: ame,na)==0){flag=1;k=i;}}if(flag==1){("E:\\",ios::out);(0,ios::beg);if(n>1){for(i=0;i<k;i++)out<<setw(2)<<liv[i].name<<setw(5)<<liv[i].sex<<setw(10)<<liv[i].room_num<<setw(10)<<liv[i].parking<<setw(20)<<liv[i].phone_num<<setw(20)<<liv[i]. ID_num;for(i=k+1;i<n;i++)out<<setw(2)<<liv[i].name<<setw(5)<<liv[i].sex<<setw(10)<<liv[i].room_num <<setw(10)<<liv[i].parking<<setw(20)<<liv[i].phone_num<<setw(20)<<liv[i]. ID_num;cout<<" 信息删除成功"<<endl<<endl;}if(n=1){}();}elsecout<<" 您要删除的住户不存在!"<<endl<<endl;cout<<" 您想继续删除吗 y / n :"<<endl;cin>>c;cout<<endl;if(c=='n')break;if(c!='y'&&c!='n'){cout<<" 指令错误!请重新输入!"<<endl<<" ";cin>>c;}}while(c=='y');break;}case'7': <<endl<<endl;cout<<" 冯勇制作"<<endl<<endl<<endl;exit(0); }break; }}//以上为menu菜单中switch控制语句cout<<" 您想继续进行其他操作吗 y / n :"<<endl<<" ";//以下控制循环语句int flag=0;do{cin>>w;cout<<endl;if(w=='n')exit(0);if(w!='y'&&w!='n')cout<<" 指令错误!请重新输入!"<<endl; elseflag=1;}while(flag==0);if(w=='y'){cout<<" 请输入操作代码: 1 输入数据"<<endl; cout<<" 2 增加数据"<<endl; cout<<" 3 修改数据"<<endl; cout<<" 4 信息查询"<<endl; cout<<" 5 信息浏览"<<endl; cout<<" 6 信息删除"<<endl; cout<<" 7 退出系统"<<endl;} cin>>p;}while(w=='y');//最外层的do-while循环}//menu函数结束int main(){key();return 0;}。

相关文档
最新文档