c语言课程设计宿舍管理系统_第1页
c语言课程设计宿舍管理系统_第2页
c语言课程设计宿舍管理系统_第3页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、c语言课程设计宿舍管理系统面向过程程序设计课程设计课程名称:学生宿舍管理系统院 系:班 级:学 号: 姓 名:指导教师:目录1. 引言:22. 课程设计任务书:3a) 设计目的b) 设计要求c) 课程设计报告装订内容与顺序d) 设计题目3. 程序设计说明书:34. 课程设计目的 .4a) 目的b) 实验内容c) 需求分析5. 程序基本框架结构图 .56. 程序测试 .67. 课程设计总结.88. 附录(源代码).18引言学生宿舍管理系统对于一个学校来说是必不可少的组成部 分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手 工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比

2、 较庞大,需要记录存档的数据的高校来说,人工记录是相当麻烦的。 而且当查找某条记录时,由于数据量庞大,还只能靠人工一条条去查 找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞 速进步的而世界,原始的记录方式已经被社会所淘汰,计算机化管理 正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种 技术不能满足需求时, 就会有新的技术诞生并取代旧技术。 21 世纪的 今天,信息社会占着主流地位, ,计算机在各行各业中的运用已经得到普 与,自动化、信息化的管理越来越广泛应用于各个领域。故随着宿舍rnTl>C管理的信息快速增长,建立一个宿舍管理系统可使宿舍管理人员的管理工作系统化

3、、规范化、自动化,大大提高管理效率。课程设计任务书一、设计目的通过本次课程设计使学生进一步加深对 C 语言课程内容的理 解,初步掌握一般应用程序的开发方法和步骤,进一步了解与掌 握C语言的编程方法和技巧,提高学生用C语言解决实际问题的 能力。二、设计要求1、认真查阅参考书、资料2、遵守课程设计时间安排4 、认真完成课程设计报告2、目录4 、课程设计任务书6、程序设计目的8 、课程设计总结与心得3、按时上机,认真调试程序三、课程设计报告装订内容与顺序1、课程设计封皮3、引言5、程序设计说明书7、程序基本框架结构图四、设计题目湖南工业大学学生宿舍管理系统程序设计说明书该课程设计的课题是湖南工业大学

4、学生宿舍管理系统。这个 系统主要是实现对学生信息的输入,输出,追加,查询,修改, 统计与删除等功能,完成对学生宿舍信息的管理。在学生宿舍管理系统中主要有输入、显示、追加、查询、修 改、统计、删除与退出 7 大功能。设计首页界面使其美观。课程设计目的一、目的1.通过本次课程设计, 强化上级动手能力, 在理论和实践的基 础上进一步巩固 C 语言程序设计课程的学习内容,掌握工 程软件设计的基本方法。2. 熟悉 C 语言的基本内容从而掌握 C 语言的基本知识以与了 解C程序的基本编写与运行。3. 了解程序的分模块编写并对程序的每个模块进行详细的设 计并且能理解一般 C 语言编写的程序。4. 熟悉 C

5、程序设计的开发环境与 C 程序的调试过程。二、实验内容我设计的是“学生宿舍管理系统” ,主要是针对住宿学生个人 信息的管理, 适用对象主要是学校, 以方便学校对住宿学生的管 理。包括学生的姓名、学号、性别、专业、班级等等。在编写过 程中主要运用 C 语言的基本知识有:数据类型(整形、实型、 字符型、指针、数组、结构等) ;运算类型(算术运算、逻辑运c 语言课程设计宿舍管理系统 算、自增自减运算、赋值运算等) ;程序结构(顺序结构、判断 选择结构、循环结构) ;大程序的功能分解方法(即函数的调用 与使用)等。三、需求分析该程序是由 C 语言编写的一个宿舍管理查询软件,本程序 在 Microsof

6、t Visual C+ 6.0 下运行, 其主要功能是实现对学生 信息的录入、添加、删除、修改、查询、统计。其中查询可以分 别以姓名、学号、宿舍号为关键字查询学生信息。统计可以分别 以学号、宿舍号、性别、班级、专业为关键字进行统计。程序基本框架结构图源代码清单#include <stdio.h>#include <stdlib.h>#include <string.h>#include <ctype.h>#include <conio.h>#define M 10000typedef struct sushechar num10;ch

7、ar name20;char sex5;char class110;char lh10;char qsh10;char tel15; XSSS;XSSS persM;int n=0;void cx1();void cx2();void cx3();void cx4();void tj1();void tj2();void tj3();int isnum(char *);void zm();void load();void modify();void input();void save();void list();void zm1();void zm3();void explain();void

8、 dele();main()char c;while(1)system("cls"); zm();c=getch(); switch(c) case '1': load(); input(); save(); break;case '2': load();modify(); save(); break;case '3': load();input(); save();break;case '4':load();list(); save();break;case '5':load();zm1();

9、 save();break;case '6':load();zm3(); save();break;case '7':load();dele(); save();break;case '8':load();explain(); save();break;case '0': exit(0);default : printf("n* 输入错误, 请重新输入! *n"); void zm()printf(" n");printf(" *n");printf(" *n&

10、quot;);* 湖南工业大学学生宿舍管理系*n");printf(" 统printf(" *n");*n");printf("*");printf("nnn");printf("1.录入信息 n");printf("2.修改信息 n");printf("3.追加信息 n");printf("4.显示信息 n");printf("5.查询信息 n");printf("6.统计信息 n")

11、;printf("7.删除信息 n");printf("8.版权信息 n");printf("0.退出本程序 n");void zm1()char c;system("cls");printf(" n");printf(" *n");printf(" *n");* 湖南工业大学学生宿舍管理*n");printf(" 系统printf(" *n");printf(" *n");printf(&quo

12、t; n");printf("nnn");printf(" 1. 按学号查询 n");2. 按姓名查询 n");printf(printf(3. 按楼号查询 n");询 n");4. 按楼号 + 寝室号查printf(0. 结束查询返回上层n");c=getch();switch(c)case '1': cx1(); break; case '2': cx2(); break; case '3': cx3();break; case '4':

13、 cx4();break; case '0': return ;default : printf("输入错误 ,按任意键返回! "); getch(); return ;void zm3()char c;system("cls");printf("n");printf("*n");printf("*n");printf(" * 湖 南 工 业 大 学 学 生 宿 舍 管 理 系 统 *n");printf("*n");printf(&quo

14、t;*n");printf("n");printf("nnn");c 语言课程设计宿舍管理系统printf("2. 按楼号统计 n");printf("3. 按楼号 + 寝室号统计 n");printf("0. 结束统计返回上层 n");c=getch();switch(c)case '1': tj1(); break;case '2': tj2(); break;case '3': tj3();break;case '0'

15、;: return ;default : printf("输入错误 ,按任意键返回! "); getch(); return ;void cx1()char name10;int i,m;system("cls");printf("nnn*按学号查询*n");printf("n 请输入要查询的学号: ");scanf("%s",name);m=0;for(i=0;i<n;i+)if(strcmp(persi.num,name)=0 )printf("#Record 学号 姓名 性

16、别 班级 楼 号 寝室号 本人电话 n");printf("%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn",i+1,pe rsi.num,,persi.sex,persi.class1,persi.lh,pers i.qsh,persi.tel);m+;if(m=0)printf("n 查无此人 !n");getch();void cx2()char name20;int i,m;system("cls");printf("nnn*按姓名查询*n");printf

17、("n 请输入姓名: ");scanf("%s",name);m=0;for(i=0;i<n;i+) if(strcmp(,name)=0 ) printf("#Record 学号 姓名 性别 班级 楼 号 寝室号 本人电话 n");printf("%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn",i+1,persi.num,,persi.sex,persi.class1,persi.lh,persi.qsh,persi.tel);m+;if(m=0

18、)printf("n 查无此人 !n"); printf("press any key continuen "); getch();void cx3()char name10;int i,m;system("cls");printf("nnn*按楼号查询*n");printf("n 请输入要查询的楼号: ");scanf("%s",name);m=0;for(i=0;i<n;i+)if(strcmp(persi.lh,name)=0 )printf("#Rec

19、ord 学号 姓名 性别 班级 楼 号 寝室号 本人电话 n");printf("%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn",i+1,persi.num,,persi.sex,persi.class1,persi.lh,persi.qsh,persi.tel);m+;if(m=0)printf("n 文件中没有该楼的学生数据 !n");printf("press any key continuen ");getch();void cx4()char name10;char num

20、10;int i,m;system("cls");printf("nnn*按楼号 + 寝室号查询 *n");printf("n 请输入要查询的楼号: ");scanf("%s",name);printf("n 请输入要查询的寝室号: ");scanf("%s",num);m=0;for(i=0;i<n;i+)&&if(strcmp(persi.lh,name)=0strcmp(persi.qsh,num)=0)printf("#Record 学

21、号 姓名 性别 班级 号 寝室号 本人电话 n");printf("%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn",i+1,pe rsi.num,,persi.sex,persi.class1,persi.lh,pers i.qsh,persi.tel);m+;if(m=0)printf("n 文件中没有符合条件的数据 !n");printf("press any key continuen ");getch();void load()FILE *fp;n=0;if(fp=fopen

22、("xsss.txt","rb")=NULL)newprintf("The not found!nplease append data!n");return ;while(fread(&persn,sizeof(XSSS),1,fp)!=0)/*(!feof(fp)*/n+;printf(" 数据导入成功 !n");fclose(fp);void save()FILE *fp;int i=0;if(fp=fopen("xsss.txt","wb")=NULL)newp

23、rintf("The not found!nplease append data!n");return ;for(i=0;i<n;i+)fwrite(&persi,sizeof(XSSS),1,fp);fclose(fp);printf(" 数据已保存 n");void input()XSSS a;while(1)system("cls");printf("nnn*输 入 信 息 *n");printf("n请输入学生住宿信息 n");printf(" 学号 :"

24、;);scanf("%s",a.num);printf(" 姓名 :");scanf("%s",);printf(" 性别 :");scanf("%s",a.sex);printf(" 班级 :");scanf("%s",a.class1);printf(" 楼号 :");scanf("%s",a.lh);printf(" 寝室号 :"); scanf("%s",a

25、.qsh);printf(" 本人电话 :");scanf("%s",a.tel);if(isnum(a.tel)=0)printf(" 输入的电话号码错误,系统将以 '0000' 替!n ");strcpy(a.tel,"0000");persn+=a;printf(" 是否继续录入( Y/N )?");if (toupper(getch()='N')break;void list()int i;system("cls");printf(&q

26、uot;nnn* 显示所有个人信息 *n");for(i=0;i<n;i+)楼号printf("#Record 学号 姓名 性别 班级 寝室号 本人电话 n");printf("%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn",i+1,pe rsi.num,,persi.sex,persi.class1,persi.lh,pers i.qsh,persi.tel);printf("press any key continuen ");getch();void modify()ch

27、ar num20;int i;system("cls");c 语言课程设计宿舍管理系统printf("nnn* 修 改 学 生 住 宿 信 息 * n");printf("n 请输入要修改学生的学号: ");scanf("%s",num);for(i=0;i<n;i+) if(strcmp(persi.num,num)=0) break; if(i=n)printf("n 文件中没有该学生的数据,无法进行修改操作!n");elseprintf("#Record 学号 姓名 性别

28、班级 楼 号 寝室号 本人电话 n");printf("%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn",i+1,pe rsi.num,,persi.sex,persi.class1,persi.lh,pers i.qsh,persi.tel);printf("n 真的要修改吗( Y/N ) ?");if (toupper(getch()='Y')printf("n 请输入新信息 :n");printf(" 学号 :"); scanf("%

29、s",persi.num);printf(" 姓名 :");scanf("%s",);printf(" 性别 :");scanf("%s",persi.sex);printf(" 班级 :");scanf("%s",persi.class1);printf(" 楼号 :");scanf("%s",persi.lh);printf(" 寝室号 :");scanf("%s"

30、;,persi.qsh);printf(" 本人电话 :");scanf("%s",persi.tel);if(isnum(persi.tel)=0)系统将以printf(" 输 入 的 电 话 号 码 错 误 ,'0000' 代替!n ");strcpy(persi.tel,"0000");printf("n 处理后的结果 :n");班级printf("#Record 学号 姓名 性别 楼号 寝室号 本人电话 n");printf("%7d %-8

31、s%-8s%-6s%-8s%-8s%-8s%-8sn",i+1,pe rsi.num,,persi.sex,persi.class1,persi.lh,pers i.qsh,persi.tel);printf("n 处理结束 !n");getch();void tj1()int i,m;system("cls");printf("nnn*按班级统计 *n");printf("n 请输入要统计人数的班级号: ");scanf("%s",name);m=0;for(i=

32、0;i<n;i+)if(strcmp(persi.class1,name)=0 )m+;if(m=0)printf("n 文件中没有符合条件的数据 !n");elseprintf("%s 班有 %d 人住宿 n",name,m); printf("nn 统计结束 !n ");getch();void tj2()int i,m;system("cls");printf("nnn*按楼号统计*n");printf("n 请输入要统计人数的楼号: ");scanf("

33、;%s",name);m=0;for(i=0;i<n;i+)if(strcmp(persi.lh,name)=0 )m+;if(m=0)printf("n 文件中没有符合条件的数据 !n");elseprintf("%s 号楼有 %d 人住宿 n",name,m); printf("nn 统计结束 !n ");getch();void tj3()char num10;int i,m;system("cls");printf("nnn*按楼号 + 寝室号统计 *n");printf

34、("n 请输入要统计人数的楼号: "); scanf("%s",name);printf("n 请输入寝室号: ");scanf("%s",num);m=0;for(i=0;i<n;i+)if(strcmp(persi.lh,name)=0 && strcmp(persi.qsh,num)=0)m+;if(m=0)printf("n 文件中没有符合条件的数据 !n");elseprintf("%s 号 楼 的 %s 寝 室 有 %d 人 住 宿 n",n

35、ame,num,m);getch();c 语言课程设计宿舍管理系统 int isnum(char *s)int i=0;while(si)if(!(si>='0' && si<='9') return 0;else i+;return 1;void explain()system("cls");printf("n");*n");c 语言课程设计宿舍管理系统printf(" * *n");printf(" * 湖 南 工 业 大 学 学 生 宿 舍 管 理

36、系 统 *n");printf("*n");printf("*n");printf("*n");printf("nnn");printf(" 本学生宿舍管理系统由某某班学生某某某编写, 本程序 有许多不足之处, n");printf(" 欢迎大家提出意见,以供修改。本系统最终版权解释归 本人所有,未经许可,不得转载。 ");void dele()char name10;int i,m,j,n;system("cls");printf("

37、nnn*删 除 信 息 *n");printf("n 请输入要删除的学生信息: "); scanf("%s",name);m=0;for(i=0;i<n;i+)if(strcmp(persi.class1,name)=0 )m+;break;if(m=0)printf(" 没有找到该学生信息 ");elseprintf("#Record 学号 姓名性别 班级 楼号 寝室号 本人电话 n");printf("%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn",i+1,pe rsi.num,,persi.sex,persi.class1,persi.lh,persi .qsh,persi.tel);printf("n 真的要删除吗( Y/N ) ?");if (toupper(getch()='Y') /toupper小写变大写for(j=i;j<n-1;j+)persj=persj+1;n-;printf("nn 删除结束 !n ");get

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论