当前位置:文档之家› 学生宿舍管理系统C语言

学生宿舍管理系统C语言

学生宿舍管理系统C语言
学生宿舍管理系统C语言

《C 语言程序设计》课程设计报告

题 目: 学生宿舍管理系统 专 业: 软件技术 班 级: 软件技术1班 姓 名: 李桦楠 齐忠春 周滨滨 徐烨 潘喜隆 郑竹强 学 号: 124109124 124109131 124109150 124109143 124109127 124109148 指导老师: 陈自力

设计时间: 2013 年 1 月 14 日 ~ 2013年 1 月 18 日

信息工程系

目录

《C程序设计》课程设计报告 (1)

1.课程设计计划 (3)

2.系统需求分析与功能设计 (4)

3. 总体设计 (6)

4. 程序模块设计 (8)

5. 技术难点与分析 (10)

6.系统测试 (11)

7. 心得体会 (17)

8. 系统实现源代码 (18)

1.课程设计计划

主要成员分配任务:

1.李桦楠,齐忠春(C程序设计课程设计报告)

2.周滨滨(系统测试)

3.潘喜隆(注册密码导入,登陆)

4.郑竹强(排序,账号信息导入)

5.徐烨(完成导入,注册模块)

6. 李桦楠(完成其它模块功能实现)

2013-1-14 早上:

完成整个系统架构,各菜单的函数实现。

函数的实现。

2013-1-15 早上

实现“Login(),huChe(),huChe(),ZhuChe(),UpMiMa(),Input(),Addto()”函数完成。

2013-1-16早上

实现“Modify(),Del(),Query(),Sta(),Px(),DaoRu(),Linen() ZhuZhecodeDaoru(),MiMaDaoRu()”函数完成。

2013-1-17早上

系统进行最后的测试。

2.系统需求分析与功能设计

1.各函数的组成;

void Login(); /*登入函数*/

void DengRu(); /*登入*/

void ZhuChe(); /*注册*/

void UpMiMa(); /*修改密码*/

void Input(); /*输入函数*/

void Addto(); /*添加函数*/

void Modify(); /*修改函数*/

void Del(); /*删除函数*/

void Query(); /*查找函数*/

void Sta(); /*统计函数*/

void Px(); /*排序函数*/

void Off(); /*退出函数*/

void DaoRu(); /*导入数据函数*/

void ZhuZhecodeDaoru(); /*注册密码导入函数*/ void MiMaDaoRu(); /*账号信息导入函数*/ void Linen(); /*打出横线函数*/

void UpMiMa_menu(); /*修改密码菜单*/

void Login_menu(); /*登入菜单*/

void Main_menu(); /*主菜单*/

void Mod_menu(); /*修改菜单*/

void Query_menu(); /*查找菜单*/

void Sta_menu(); /*统计菜单*/

void Login_menu(); /*登入界面函数*/ 2..结构体

struct ZCcode /*注册密码结构体*/

{

char Password1[6];

};

struct code /*密码结构体*/

{

char user[10];

char password[6];

};

struct Inform /*基本信息结构体*/ {

int NUM;

int ShuHao;

char Name[7];

char Sex[3];

int Age;

char Class[10];

char Spec[10];

3. 总体设计

Tu-3.1

学生宿舍管理系统

4. 程序模块设计

1.登入主函数实现方法;

先定义整形变量 i,Flas=1(i 用来做switch开关,Flas用做while的判断变量. 做一个while循环判断条件为Flas==0。)

在while循环里面,调用清屏函数,然后调用登入界面函数,在屏幕打出提示选择序号,向计算机输入变量i, 做一个sitch开关变量为i,

case1里面调用DengRu函数, Flas=0,break。

case2里面调用ZhuChe函数,break。

Case3里面调用UpMiMa()函数,break。

Case4 里面直接用break。

2.登入注册函数实现方法

先定义整形变量i,Ese4,(i用来做for循环,Ese4用来做goto跳转)。

定义字符数组Pass[10],Password[6](第一个用来做用户密码第二次的比对,第二个用来做注册密码的比对)。

定义文件指针f,f1(f用来打开用户密码文件,f1用来打开注册密码文件),用a+的方式打开用户密码文件,用r的方式打开注册密码文件。

调用清屏函数。

调用MiMaDaoRu()函数,ZhuZhecodeDaoru()函数,用getchar()清楚缓冲区。

在屏幕上打出提醒输入请注册密码。

用gets()输入注册密码字符数组名为Password。

用if语句来做为判断注册密码有没有相同。If的条件用字符串比较函数对Password,注册密码结构体的Password1进行比对。

当if为真时,里面调用清屏函数,调用MiMaDaoRu函数,屏幕打出提醒用户输入新账号,用gets向计算机输入密码结构休变量https://www.doczj.com/doc/0a8799545.html,er。屏幕打出提醒用户输入新密码,用gets向计算机输入入密码结构体变量MiMa1.password。屏幕打出提醒用户再次密码,用gets向计算机输入字符数组Pass。

用for循环,条件i初始为0,i小于全局变量n(n为总用户数),i++。

For里面用if,if判断条件用字符数组比较函数对https://www.doczj.com/doc/0a8799545.html,er,MiMa[i].user进行比对。如果为真屏幕打出提醒“已经有该用户存在”调用getch函数,使用goto Ese4。

在for循环外面,用if,if判断条件用字符数组比较函数对Pass,MiMa1.password进行比较,如果为真的化,则用fprintf函数向文件写入https://www.doczj.com/doc/0a8799545.html,re,MiMa.Password的数据。调清屏函数。在屏幕上打出提醒“注册成功,用getch函数清楚缓冲区,之后关闭文件.。当IF为假时。调用清屏函数,屏幕打出提醒“再次密码不重复。

当if为假时,调出清屏函数,屏幕打出提醒”注册密码错误”。

最后Ese4,关闭文件f,f1。

3登入函数实现方法

定义整形变量i,Flas=1(i是用来做for循环变量,Flas=1是用来做判断密码正确性)。

定义字符形数组Pass[10],User[10](分别用来输入密码,和用户名)。

调用清屏函数。调用MiMaDaoRu函数。调用getchar()用来清楚缓冲区。

屏幕打出提醒“请输入账号”, 用gets() 输入User 。

屏幕打出提醒“请输入密码”, 用gets() 输入Pass 。

用for 条件为(i=0;i

For 里面执行if判断语句,用字符串数组比较函数进行对User,MiMa[i].user进行比较和Pass,MiMa[i].password比较,作为if判断的条件。如果为真时Flas=0,break。在循环外面用if 判断Flas是否是1,如果有真,屏幕打印出提醒“账号或密码错误,返回登陆界面!”,用时getch()控制,用getchar()清除缓冲区,调用Login()函数。如果为假,调用清屏函数,屏幕打出提醒“登陆成功!”,调用getch()。

4.密码修改函数实现方法

定义整形i,x,Flas(i是用来for循环控制,x用来做switch开关,Flas做为判断条件)。定义字符形ZhuCheCode[6],User[10],Code[10](第一者用来做输入注册密码,后两者分别用来输入用户名,用户密码)

定义文件指针f1,f。

调用清屏函数,调用MiMaDaoRu()函数,调用ZhuZhecodeDaoru()函数,调用修改密码菜单函数UpMiMa_menu()。屏幕打出提醒”请选择相应的序号:”

用整形向计算机输入x。用switch开关条件为x。

case 1: 里为调用getchar()清除缓冲区。调用清屏函数。屏幕打出提醒”请输入原注册密码”。用gets()输入注册密码数组明ZhuCheCode。用if,if条件用字符串比较函数进行对ZhuCheCode,code1.Password1比较。

为真时,里用调用清屏函数。屏幕打出提醒”请输入新注册密码”用gets()输入密码新密码code1.Password1。用f1,打开方式为w的方式打开文件”ZCcode.txt”,用if,判断指针,如果为空值,调用系统清屏函数。屏幕打出提醒“打开文件失败!”。调用getch()。,关闭文件f1

为假时.时面,调用清屏函数,屏幕打出提醒”注册密码错误”,调用getch()。

最后调用break。

Case 2.里面调用清屏函数。调用getchar()清除缓冲区。屏幕打出提醒”请输入用名”。用gets()输入用户名User。屏幕打出提醒”请输入密码”。用gets()输入用户密码Code。

用for,for条件为(i=0;i

在循环外面,用if,if判断条件为Flas是否=0。如果为真,调用清屏函数。用f,w方式打开文件”MiMa.txt”。判断指针f是否为空。真.调用清屏函数。屏幕打出提醒”打开文件失败!”调用getch()。否则,用for,for条件为(i=0;i

为假时。调用清屏函数。屏幕打出提醒”没有该用户存在!”。调用getch()函数。Case 3;直接用brea

5. 技术难点与分析

(主要内容:本课题在设计过程中所遇到的技术难点及解决方法。)

(1)刚开始时,输入的信息不能保存在文件中,所有数据都是一次性的。后来知道没在主程序中加保存模块,添加后就可以了。但调试中由发现在添加中加入的数据还是不能保存,在细心观察下发现问题出现在没有添加feof(f)来判断指针值是否为空,接下来的调试中,问题解决了。

(2).切换界面的时候出现不能切换到该有的界面,后来发现少添加了函数。后来迎刃而解了。(3)其他问题也就在粗心或者简单的错误,印象不是很深刻。

6.系统测试

测试环境描述:Microsoft Visual C++ 6.0 windows xp操作系统登录模块

学生宿舍管理主模块

添加模块

查找模块

统计模块1.按性别统计

2.按宿舍号统计

3.按专业统计

7. 心得体会

通过此次课程设计,使我更加扎实的掌握了有关C语言方面的知识,在设计过程中随人遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通过亲手动手的制作,使我们掌握的知识不再是纸上谈兵。过而能改,善莫大焉。在课程设计过程中,不断领悟,不断获取。最终的检查调试环节,本领就是在践行“过而能改,善莫大焉”的知行观。这次课程设计终于顺利完成,在设计中遇到了许多问题,最后在组长的指导下,终于游逆而解。在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就像到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只能这样,才能成功的做成想做的事,才能在今后的道路上披荆斩棘,而不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会及他人对你的认可。

8. 系统实现源代码

/*学生宿舍管理系统*/

#include "stdio.h"

#include "string.h"

#include "stdlib.h"

int m,n;

struct ZCcode /*注册密码结构体*/

{

char Password1[6];

};

struct ZCcode code1;

struct code /*密码结构体*/

{

char user[10];

char password[6];

};

struct code MiMa[100]; /*定义结构体变量*/ struct code MiMa1;

struct Inform /*基本信息结构体*/

{

int NUM;

int ShuHao;

char Name[7];

char Sex[3];

int Age;

char Class[10];

char Spec[10];

};

struct Inform CY[900];

struct Inform t;

void Login(); /*登入函数*/

void DengRu(); /*登入*/

void ZhuChe(); /*注册*/

void UpMiMa(); /*修改密码*/

void Input(); /*输入函数*/

void Addto(); /*添加函数*/

void Modify(); /*修改函数*/

void Del(); /*删除函数*/

void Query(); /*查找函数*/

void Sta(); /*统计函数*/

void Px(); /*排序函数*/

void Off(); /*退出函数*/

void DaoRu(); /*导入数据函数*/

void ZhuZhecodeDaoru(); /*注册密码导入函数*/

void MiMaDaoRu(); /*账号信息导入函数*/

void Add(); /*控制循环函数*/

void Linen(); /*打出横线函数*/

void UpMiMa_menu(); /*修改密码菜单*/

void Login_menu(); /*登入菜单*/

void Main_menu(); /*主菜单*/

void Mod_menu(); /*修改菜单*/

void Query_menu(); /*查找菜单*/

void Sta_menu(); /*统计菜单*/

void Login_menu();/*登入界面函数*/

void ZhuZhecodeDaoru() /*注册密码导入函数*/

{

FILE *f1;

f1=fopen("ZCcode.txt","r");

if(f1==NULL)

{

system("cls");

printf("温馨提示:\n");

printf("头次运行本系统,请先自建立一个文件名为ZCcode的文本文件。\n");

printf("头次使用注册密码为空,请进行修改,确保安全性!");

getch();

exit(1);

}

fscanf(f1,"%s",code1.Password1);

fclose(f1);

}

void MiMaDaoRu() /*账号信息导入函数*/

{

int i=0,Flas=1;

FILE *f;

f=fopen("MiMa.txt","r");

if(f==NULL)

{

printf("打开文件失败!");

}

while (!feof(f)) /*feof(f)当文件有未处理数据时*/

{

fscanf(f,"%s %s\r\n",MiMa[i].user,MiMa[i].password);

i++;

n=i;

}

fclose(f);

}

void DaoRu() /*导入*/

{

int i=0,Flas=1;

FILE *f;

f=fopen("Inform.txt","r");

if(f==NULL)

{

printf("打开文件失败!");

}

while (!feof(f)) /*feof(f)当文件有未处理数据时*/

{

fscanf(f,"%d %d %s %s %d %s %s \r\n",&CY[i].NUM ,&CY[i].ShuHao,CY[i].Name,CY[i].Sex,&CY[i].Age ,CY[i].Class,CY[i].Spec);

i++;

m=i;

}

fclose(f);

}

void Px() /*排序*/

{

int i,j;

FILE *f;

DaoRu();

for(i=0;i

{

for(j=0;j<(m-1)-i;j++);

{

if(CY[j].NUM

{

t=CY[j+1];CY[j+1]=CY[j];CY[j]=t;

}

}

}

f=fopen("Inform.txt","w");

if(f==NULL)

{

printf("打开文件失败!");

}

for (i=0;i

{

fprintf(f,"%-9d %-4d %-7s %-3s %-2d %-10s %-10s\r\n",CY[i].NUM,CY[i].ShuHao,CY[i].

学生宿舍管理系统C语言

《C 语言程序设计》课程设计报告 题 目: 学生宿舍管理系统 专 业: 软件技术 班 级: 软件技术1班 姓 名: 李桦楠 齐忠春 周滨滨 徐烨 潘喜隆 郑竹强 学 号: 124109124 124109131 124109150 124109143 124109127 124109148 指导老师: 陈自力 设计时间: 2013 年 1 月 14 日 ~ 2013年 1 月 18 日 信息工程系

目录 《C程序设计》课程设计报告 (1) 1.课程设计计划 (3) 2.系统需求分析与功能设计 (4) 3. 总体设计 (6) 4. 程序模块设计 (8) 5. 技术难点与分析 (10) 6.系统测试 (11) 7. 心得体会 (17) 8. 系统实现源代码 (18)

1.课程设计计划 主要成员分配任务: 1.李桦楠,齐忠春(C程序设计课程设计报告) 2.周滨滨(系统测试) 3.潘喜隆(注册密码导入,登陆) 4.郑竹强(排序,账号信息导入) 5.徐烨(完成导入,注册模块) 6. 李桦楠(完成其它模块功能实现) 2013-1-14 早上: 完成整个系统架构,各菜单的函数实现。 函数的实现。 2013-1-15 早上 实现“Login(),huChe(),huChe(),ZhuChe(),UpMiMa(),Input(),Addto()”函数完成。 2013-1-16早上 实现“Modify(),Del(),Query(),Sta(),Px(),DaoRu(),Linen() ZhuZhecodeDaoru(),MiMaDaoRu()”函数完成。 2013-1-17早上 系统进行最后的测试。

酒店管理系统代码C语言版

#i n c l u d e<> #include <> #include <> oomNumber = 301+i; memset(roomArray[i].nameOne,0,20); memset(roomArray[i].nameTwo,0,20); roomArray[i].sexOne = 0; roomArray[i].sexTwo = 0; roomArray[i].Count = 0; } } void fun1() ount == 2) { continue; } else if(roomArray[i].Count == 1) { if(roomArray[i].sexOne != sex) { continue; } strcpy(roomArray[i].nameTwo,name);

roomArray[i].sexTwo = sex; roomArray[i].Count++; system("cls"); printf("客人已经成功入住,在房间%d",roomArray[i].roomNumber); return;; } else { strcpy(roomArray[i].nameOne,name); roomArray[i].sexOne = sex; roomArray[i].Count++; system("cls"); printf("客人已经成功入住,在房间%d",roomArray[i].roomNumber); return;; } } printf("无法入住,房间已经住满或者是没有适合的房间"); } void fun2() ameOne,name) == 0) {

酒店管理系统代码(C语言版)

#include #include #include //房间信息结构体 struct Node { int Count; //指示该房间有多少个房客 char nameOne[20]; //房客1的名字 char nameTwo[20]; //房客2的名字 int sexOne; //房客1的性别-1代表女,0代表没有,1代表男int sexTwo; //房客2的性别 int roomNumber; //房间号 }roomArray[5]; //初始化房间数组 void InitArray() { int i; for(i=0;i<5;i++) { roomArray[i].roomNumber = 301+i; memset(roomArray[i].nameOne,0,20); memset(roomArray[i].nameTwo,0,20); roomArray[i].sexOne = 0; roomArray[i].sexTwo = 0; roomArray[i].Count = 0; } } void fun1() //旅客入住的操作 { char name[20]; int sex; int i; printf("\n输入入住旅客姓名和性别(空格隔开,1为男,-1为女):"); scanf("%s %d",name,&sex); for(i=0;i<5;i++) {

{ continue; } else if(roomArray[i].Count == 1) { if(roomArray[i].sexOne != sex) { continue; } strcpy(roomArray[i].nameTwo,name); roomArray[i].sexTwo = sex; roomArray[i].Count++; system("cls"); printf("客人已经成功入住,在房间%d",roomArray[i].roomNumber); return;; } else { strcpy(roomArray[i].nameOne,name); roomArray[i].sexOne = sex; roomArray[i].Count++; system("cls"); printf("客人已经成功入住,在房间%d",roomArray[i].roomNumber); return;; } } printf("无法入住,房间已经住满或者是没有适合的房间"); } void fun2() //退房操作 { int i; char name[20]; printf("请输入要退房旅客的姓名:"); scanf("%s",name); for(i=0;i<5;i++) { if(strcmp(roomArray[i].nameOne,name) == 0) { memset(roomArray[i].nameOne,0,20);

宿舍管理系统c语言

#include"stdio.h" int main_menu_select() /*主菜单选择*/ {char s; printf("\n1 Administrator in charge of the students and books' information\n"); printf("\n2 Administrator in charge of lend books\n"); printf("\n3 Administrator in charge of receive books\n"); printf("\n4 Student\n"); printf("\n5 Guest\n"); printf("\n6 exit\n\n"); printf("\n input 1-6 to choice the function\n"); do { s=getche(); printf("\n"); }while(s<49||s>54); return s; } int administrator_menu_select() /*管理员菜单选择*/ {int s; printf("input 1-6 to choice the function\n"); printf("1 input the information of books\n"); printf("2 recompose the information of the books\n"); printf("3 cancel the information of books \n"); printf("4 input the information of students\n"); printf("5 recompose information of the students\n"); printf("6 cancel the information of students\n"); printf("7 return main menu\n"); printf("8 exit\n\n" ); do { s=getche(); printf("\n"); }while(s<49||s>56); return s; } hello_main() /*返回主菜单*/ {for(; ;) {switch(main_menu_select()) {case 49:adm_information();break;

酒店管理系统代码c语言版)

#i n c l u d e #include #include //房间信息结构体 struct Node { int Count; //指示该房间有多少个房客 char nameOne[20]; //房客1的名字 char nameTwo[20]; //房客2的名字 int sexOne; //房客1的性别 -1代表女,0代表没有,1代表男 int sexTwo; //房客2的性别 int roomNumber; //房间号 }roomArray[5]; //初始化房间数组 void InitArray() { int i; for(i=0;i<5;i++) { roomArray[i].roomNumber = 301+i; memset(roomArray[i].nameOne,0,20);

memset(roomArray[i].nameTwo,0,20); roomArray[i].sexOne = 0; roomArray[i].sexTwo = 0; roomArray[i].Count = 0; } } void fun1() //旅客入住的操作 { char name[20]; int sex; int i; printf("\n输入入住旅客姓名和性别(空格隔开,1为男,-1为女):"); scanf("%s %d",name,&sex); for(i=0;i<5;i++) { if(roomArray[i].Count == 2) { continue; } else if(roomArray[i].Count == 1) { if(roomArray[i].sexOne != sex)

学生管理系统 C语言

C/C++程序设计 课程设计报告 专业: 班级: 学号: 姓名: 版本号: 时间:

目录 1 概述 (2) 1.1目的 (2) 1.2计划 (2) 2 课程设计过程及结果 (3) 2.1编程环境及工具 (3) 2.2排序与简单分析 (3) 2.3综合设计 (3) 2.3.1 功能实现 (3) 2.3.2 程序异常处理 (5) 2.3.3 特色功能 (5) 3 课程设计总结 (6) 3.1课程设计计划执行情况 (6) 3.2我理解的C++ (6) 3.3改进设想 (6) 附录关键代码 (6)

原创声明:本课程设计报告及相应的软件程序的全部内容均为本人独立完成,如有抄袭,愿承担相应后果。 声明人___________________ 学号:__________________

1概述 1.1 目的 1、熟悉c语言的编译环境 2、掌握c语言的基本操作 3、回顾并加深对C/C++程序设计相关知识的理解,能够用C/C++独立完成简单数据管 理软件的编写 4、锻炼同学思维强度与能力 5、培养同学认真态度和刻苦的精神 1.2 计划 用Microsoft Visual C++ 6.0进行编译,利用之前学过的课程知识和查询资料等方法完成题目的设计,用Debug进行调试。 1.回顾c语言编程基本内容,了解各种数据类型及掌握各种语句的结构类型。 2.完成一个简单任务:排序与简单分析把一个完全由小写字母组成字符串按照每个字母的出现次数从低到高重新排序。出现次数相同的按照字母顺序排列,(a最前,z最后)。 输入:任意一个字符串(小写,长度小于255) 输出:重新排序后的结果 例如,输入:aassdfkjiowea回车 则输出为:defijkowssaaa 3.综合设计:设计实现学生成绩管理软件。 参考下面的数据,用C/C++设计一个简单的学生成绩管理软件,实现基本的功能。 学生信息文件(A.TXT)及其内容(示意): 学号姓名性别班级 200800800901 张三男电子0801 200800820902 李四女通信0801 200800800903 王五女电子0802 200800820904 赵六男通信0801 …… 课程信息(B.TXT)及其内容(示意): 课程编号课程名称学分 C01 大学英语 4 C02 高等数学 4 C03 C++程序设计 3 …… 学生成绩信息文件(C.TXT)及其内容(示意,成绩保存使用浮点数): 学号课程成绩 200800800901 C01 89 200800800902 C01 68.5 200800800901 C02 45.5 200800800903 C02 78 实现数据录入显示功能查询功能数据删除、整理功能排序功能。

学生宿舍管理软件C语言源代码完整版

scanf( "%s" ,S[flag].S_name); _name); getchar(); _class); getchar(); printf( " 请输入学生的学号 (15个字符以内 ):" ); scanf( "%s" ,S[S->Total].S_number); getchar(); S_number_Judge(S,S->Total);_number); getchar(); printf(" 请输入学生地址 :"); scanf("%s",S[S->Total].S_address); getchar(); printf( “请输入学生电话号码 : ”); scanf("%s",&S[S->Total]. S_phone); getchar(); dirty=1; printf( " 添加成功 !\n\n" ); _name,name)==0) flag=i; if (!flag) printf( else " 你所要修改的学生信息在表中不存在! \n" ); printf( printf( " 新信息如下 :\n" ); " 请输入学生姓名 (30个字符以内 ):" ); getchar(); printf( “请输入学生班级 (30 个字符以 内 ): ”); scanf("%s",S[flag].S_class); getchar(); 源程序代码: int dirty=0; _number,S[t].S_number)==0) printf( "学号输入失败 , 该学号已存在 ,请重新输入学号 !\n" ); printf( "请输入学生的学号 (15 个字符以内 ):" ); getchar(); i=1; #include <> #include <> #include <> #define M 100 scanf( "%s",S[t].S_number);

学生宿舍管理软件C语言源代码

源程序代码: #include #include #include #define M 100 int dirty=0; //用来判断是否已保存操作 //定义一个存储学生相关信息的结构体 typedef struct { char S_name[31]; //学生姓名 char S_class[31]; //学生班级 char S_number[16]; //学生学号 int D_number; //学生所在寝室的宿舍号 char S_address[500]; //学生地址 int S_phone[20]; //学生电话号码 int Total; //学生总数 }Student[M],St; //判断学号是否与表中所存学号重复 void S_number_Judge(Student S,int t) { int i; for(i=1;i<=(S->Total)-1;i++) while(strcmp(S[i].S_number,S[t].S_number)==0) { printf("学号输入失败,该学号已存在,请重新输入学号!\n"); printf("请输入学生的学号(15个字符以内):"); scanf("%s",S[t].S_number); getchar(); i=1; } } //添加学生信息函数 void Add(Student S) { printf("请输入学生姓名(30个字符以内):"); scanf("%s",S[++(S->Total)].S_name); getchar();//获取换行符 printf(“请输入学生班级(30个字符以内):”);

基于C语言的酒店管理系统论文

2012届C语言课程设计题目:酒店管理系统 院(系)别 专业 班级 学号 姓名 指导教师 二○一三年六月 - 1 -

原创声明 本人***郑重声明:所呈交的论文“酒店管理系统”,是本人在导师**的指导下开展研究工作所取得的成果。除文中特别加以标注和致谢的地方外,论文中不包含任何其他个人或集体已经发表或撰写过的研究成果,对本文的研究做出重要贡献的个人和集体均已在文中以明确方式标明,本人完全意识到本声明的法律后果,尊重知识产权,并愿为此承担一切法律责任。 论文作者(签字): 日期:年月日 - 2 -

摘要 近年来,随着旅游业的发展,对酒店的需求也日益增大,这就要求酒店必须提高服务质量和服务水平。所以酒店就必须有一个完整安全的管理系统,从而更好的管理酒店,提高工作效率,减轻工作人员负担。本系统是基于C语言的基础而设计开发的,能帮助酒店更好的实现对客房的管理。 论文先研究了酒店管理系统要实现的全部功能,整体确定了各个功能的部分代码,然后重点进行的是对系统登陆界面和系统入口的设计。整体引用了大量的结构体指针和结构体数组,对系统入口则采用switch语句实现多分支选择结构。 通过使用该管理系统,能够快速而准确的实现对酒店客房的管理,从而使酒店的服务质量提高,为酒店树立良好的形象树立基础。 关键词:酒店管理系统,C语言,系统登陆,系统入口 - 3 -

目录 前言 (1) 1 系统设计 (2) 1.1系统设计目的和意义 (2) 1.1.1 目的 (2) 1.1.2 意义 (2) 1.2系统实现的功能 (2) 1.2.1 系统登录界面 (2) 1.2.2 系统入口 (2) 1.3 系统设计 (2) 1.3.1 设计原则 (2) 1.3.2 设计原理 (3) 1.3.3 设计步骤 (3) 2 系统分析 (5) 2.1 系统的可行性分析 (5) 2.1.1 技术可行性 (5) 2.1.2 经济可行性 (5) 2.1.3 社会因素可行性 (5) 2.2 系统的功能分析 (5) 2.2.1 系统初始设置 (5) 2.2.2 系统登录界面 (5) 2.2.3 系统入口 (6) 结论 (8) 致谢 (9) 参考文献 (10) 附录 (11) - 4 - - 4 -

C语言实验报告-酒店管理系统

武汉科技大学 C语言程序设计 课程设计 题目酒店管理系统 班级信息与计算科学2班姓名陈诚 学号201407119043 成绩 2015年6 月23 日

一、总体设计 1、程序的总体设计 (1)程序总体设计思路: 酒店房间登记管理系统,实现的是房间登记与管理(包括登记入住、查询)为了体现模块化设计,把所有要实现的功能做成函数,采用分步实施的方法逐步细化。具体分布实施有以下5步。 1,编写模块 2,定义实现个功能模块所要函数 3,编写各个函数 4,理清思路,逐步修改 5,调试整个程序。 核心部分是各个函数: 1、欢迎界面函数:通过switch进入不同界面。 2、登记入住函数:使用户在入住前登记个人信息,选择房间信息 3、查询入住情况函数:顾客可通过两种方式查找到自己的个人信息。 4、查询当前费用函数:顾客可随时查询所用费用 5、结账退房函数:所有信息清零。 2、数据结构 此系统,选择用结构体存放不同类型的数据,房间信息。在这过程中由于对指针的运用与操作还不熟练,不方便修改,所以没用指针。 (1)创建房间信息结构体 /*结构体hotel 房间号、房间种类、客户姓名、身份证号、入住状态、实际收房费,押金等*/ struct hotel { int num; /*房间号*/ int kind; /*房间种类1(表示单人间)2(表示双人间)*/ char name[20]; /*姓名*/ char ID[19]; /*身份证号*/ int flag; /*flag 0(表示有人入住)0(表示无人入住)*/ int dingjia; /*房间定价*/ int shiji; /*实际缴纳费用*/ }room[M]; 3、函数原型声明 void welcome(); //主界面 int dengji(); //登记入住函数 int now_room(); //查询当前房间入住情况 int now_feiyong(); //查询当前费用 int tuifang(); //结账退房 int find(); //查询当前入住人数 int kfxinxi(); //客户信息

最新学生信息管理系统C语言编程

学生信息管理系统C语言编程 【问题描述】 学生信息的管理是每个学校必须具有的管理功能,主要是对学生的基本情况及学习成绩等方面的管理。该系统模拟一个简单的学生管理系统,要求对文件中所存储的学生数据进行各种常规操作,如:排序、查找、计算、显示等功能。通过此课题,熟练掌握文件、数组、结构体的各种操作,在程序设计中体现一定的算法思想,实现一个简单的学生信息管理系统。【基本要求】 (1)学生信息包括: 学生基本信息文件(student.txt)(注:该文件不需要编程录入数据,可用文本编辑工具直接生成)的内容如下: (2)学生成绩基本信息文件(score.dat)及其内容如下:((注:该文件内容需要编程录入数据,具体做法见下面的要求) 学号课程编号课程名称学分平时成绩实验成绩卷面成绩综合成绩实得学分(3)需要实现的功能 1)数据录入和计算功能:对score.dat进行数据录入,只录入每个学生的学号、课程编号、课程名称、学分、平时成绩、实验成绩、卷面成绩共7个数据,综合成绩、实得学分由程序根据条件自动运算。 综合成绩的计算:如果本课程的实验成绩为-1,则表示无实验,综合成绩=平时成绩*30%+卷面成绩*70%;如果实验成绩不为-1,表示本课程有实验,综合成绩=平时成绩*15%+实验成绩*15%+卷面成绩*70% 。 实得学分的计算:采用等级学分制,综合成绩在90-100之间,应得学分=学分*100%;综合成绩在80-90之间,应得学分=学分*80%;综合成绩在70-80之间 ,应得学分=学分*75%;综合成绩在60-70之间,应得学分=学分*60%;综合成绩在60以下 ,应得学分=学分*0%。 2)查询功能:分为学生基本情况查询和成绩查询两种 (1)学生基本情况查询: ①、输入一个学号或姓名(可实现选择),查出此生的基本信息并显示输出,格式如下: ②、输入一个宿舍号码,可查询出本室所有的学生的基本信息并显示输出。(格式如上所示) (2)成绩查询: ①、输入一个学号时,查询出此生的所有课程情况,格式如下: 学号:xx 姓名:xxxxx 课程编号:xxx 课程名称:xxxxx 综合成绩:xxxx 实得学分: xx 课程编号:xxx 课程名称:xxxxx 综合成绩:xxxx 实得学分: xx 课程编号:xxx 课程名称:xxxxx 综合成绩:xxxx 实得学分: xx …………………… 共修:xx科,实得总学分为: xxx (3)删除功能: 提供待删除学生的学号,则在student.txt和score.dat中删除所有与该学生有关的信息。(4)排序功能:能实现选择按综合成绩或实得学分升序或降序排序并显示数据。 【程序设计的具体说明】 (1)将与两个文件对应的信息分别定义两种结构体类型来表示,也可以用类来定义;(2)对score.dat文件的写入,从键盘上输入的是前七项,后两项数据项根据计算方法算出后,得到完整的结构体信息,作为一个整体写入(可调用write函数)。

学生宿舍管理系统设计(C语言)

计算机程序设计基础(C语言)课程设计题目:学生宿舍管理系统设计 班级:计121 学号:120502120504120506120505 姓名:贾文超杨晓红张永康陆秀和 指导教师:刘喜梅孙强范周瑜 2013年7月1 日·北京 信息工程学院 信息技术教学与实验中心 学生宿舍管理系统设计 功能:实现简单的学生宿舍基本信息管理,宿舍的

基本信息包括楼号、房间号、面积、所容纳 人数、已入住人数等。 基本要求: 1.设计简单的菜单,能够进行系统功能选择。 2.实现信息的录入功能。 3.在已有信息的基础上添加新的纪录。 4.删除指定房间号的记录。 5.修改指定房间号的记录。 6.实现信息的浏览功能。 7.按房间号查询功能。 8.按已入住人数排序功能。 1.学生宿舍管理系统概述 (4) 1.1需求分析 (4) 1.2基本功能 (4)

2.学生宿舍管理系统总体设计 (5) 1.1管理流程图 (5) 1.2管理员操作 (5) 3.模块划分 (6) 1.1第一选择模块 (6) 1.2第二录入模块 (7) 1.3第三添加模块 (8) 1.4第四删除模块 (8) 1.5第五修改模块 (9) 1.6第六浏览模块 (9) 1.7第七查询模块 (10) 1.8第八排序模块 (11) 4.算法说明 (11) 5.各函数模块功能 (11) 1.1各自定义函数功能 (11) 6.程序测试 (12) 7.结论 (14) 1.1对调试中主要问题进行总结 (14) 8.体会及建议 (14) 1.1对自己设计进行评价,指出合理和不足之处,提出改进的方案 (14) 9.学生宿舍管理系统设计参与者 (14) 1.1 小组成员信息 (14) 1.学生宿舍管理系统概述 1.1需求分析

c语言的酒店管理系统.docx

. 基于 C语言的酒店管理系 统课程设计 学院:通信与电子工程学院 班级:电子 102 班 学号:2010131085 2010131012 姓名:邹远文王帅 指导老师:题原 日期:2013年11月27日

摘要 随着个人计算机的的普及,越来越多的重复性工作被交由计算机来完成。在这种大趋势下,传统的纸质档案管理方式已不适应现代服务业的发展。数字化的管理成为酒店等行业的必要条件。酒店客房管理的电脑化对于优化员工工作效 率、降低成本及改善服务质量等方面都有十分积极的作用。 本程序是用于酒店管理的软件。它可以实现定退房业务处理,用户信息的记录、查询及房间状态管理等功能。虽然比较简陋但已具备应用程序的雏形。 经济上主要考虑本系统带来的效益是否大于开发本系统的成本,由于本系统的开发以课程设计为依托 , 参与人员的目的以学习为主 , 投入成本比较小。另外,系统管理员和业务员都拥有计算机的专业知识 , 酒店前台工作人员和管理人员不需要经 过培训或只需要经过少量培训即可操作本软件。这样可以为开发本系统节升资金。 同时无纸化办公可以节省资源,减少后期资源浪费。因此,开发本系统在经济是可 行的。 本程序运用 Microsoft Visual C++ 编译器编写,涉及 C 语言的文件读写,结构 数组运用及字符串函数相关知识。 关键词:数字化管理酒店管理 C 语言

目录 摘 要..............................................................I 第 1 章绪论 ...................................................IV 1.1概述 ........................................................IV 1.1.1酒店管理系统的需求 ....................................IV 1.2酒店管理系统的当前需求 .....................................IV 1.3酒店管理系统的可行性 .........................................V 第 2 章酒店管理系统的功能实现 ......................................V 2.1设计模块 ....................................................VI 2.1.1添加录入信息模块 ......................................VI 2.1.3 删除客房信息模块 ..........................................VI 2.1.4查询剩余客房函数 ......................................VI 2.1.5排序剩余客房模块 ......................................VI 2.1.6输出剩余客房函数 ......................................VI 2.1.7点餐系统 ..............................................VI 2.2管理员登陆流程 .............................................VII 2.2主要功能模块数据流程图 ....................................VIII 2.3管理员预处理流程 ............................................IX 2.4登记入住系统 ................................................IX 2.5客房状态查询 ................................................IX 2.6住户信息查询 .................................................X 2.7结账退房系统 .................................................X 2.8系统管理 .....................................................X 2.9系统详细设计任务 .............................................X 第 3 章系统物理配置方案设计 .......................................XI 3.1设计指标 ....................................................XI 3.1.1 系统的可靠性 ...........................................XI 3.1.2 系统吞吐量 ................................................XI

c语言-学生宿舍管理系统(难度系数:3级)

C语言:学生宿舍管理系统 (难度系数:3级) (附加清屏操作) 设计一个学生宿舍管理程序。该程序应该具有以下功能: (1)录入学生宿舍信息; (2)修改、删除学生宿舍信息; (3)统计当前未住学生宿舍的个数并显示宿舍编号; (4)统计当前空闲的男生、女生床位数; (5)按宿舍编号由小到大显示已住学生的宿舍信息; (6)分别显示男生、女生有空床位的宿舍信息; (7)按宿舍编号、可住人数、空床数、宿舍性质(男生还是女生)等信息进行查询,若查询信息不存在,输出没找到的信息。 题目要求: (1)按照分析、设计、编码、调试和测试的软件开发过程完成这个应用程序,即在程序中加入异常处理,检查用户输入数据的有效性,以保证程序的健壮性; (2)宿舍信息应该包括宿舍编号、可住人数、空床数、宿舍性质等; (3)为各项操作功能设计一个菜单,应用程序运行后,先显示这个菜单,然后用户通过菜单选项选则所需进行的操作项目,菜单要界面友好、清晰; (4)将所有宿舍信息存储在一个文件中,并实现文件的读写操作,即将输入的数据以文件的形式存盘,将原来已经存盘的文件读入内存,进行管理; (5)应保证测试用例测试程序的各种边缘情况。 输入要求: 应用程序运行后,在屏幕上显示一个菜单。用户可以根据需要,选定相应的操作项目。进入每个操作后,根据应用程序的提示信息,从键盘输入相应的信息。 输出要求: (1)应用程序运行后,在屏幕上显示一个菜单。 (2)要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。 代码: #include"stdio.h" #include"stdlib.h" #include"conio.h" #include"process.h" #define max 2 //最大容量

C语言实验分析报告-酒店管理系统

C语言实验报告-酒店管理系统

————————————————————————————————作者:————————————————————————————————日期:

武汉科技大学 C语言程序设计 课程设计 题目酒店管理系统 班级信息与计算科学2班姓名陈诚 学号201407119043 成绩 2015年6 月23 日

一、总体设计 1、程序的总体设计 (1)程序总体设计思路: 酒店房间登记管理系统,实现的是房间登记与管理(包括登记入住、查询)为了体现模块化设计,把所有要实现的功能做成函数,采用分步实施的方法逐步细化。具体分布实施有以下5步。 1,编写模块 2,定义实现个功能模块所要函数 3,编写各个函数 4,理清思路,逐步修改 5,调试整个程序。 核心部分是各个函数: 1、欢迎界面函数:通过switch进入不同界面。 2、登记入住函数:使用户在入住前登记个人信息,选择房间信息 3、查询入住情况函数:顾客可通过两种方式查找到自己的个人信息。 4、查询当前费用函数:顾客可随时查询所用费用 5、结账退房函数:所有信息清零。 2、数据结构 此系统,选择用结构体存放不同类型的数据,房间信息。在这过程中由于对指针的运用与操作还不熟练,不方便修改,所以没用指针。 (1)创建房间信息结构体 /*结构体hotel 房间号、房间种类、客户姓名、身份证号、入住状态、实际收房费,押金等*/ struct hotel { int num; /*房间号*/ int kind; /*房间种类1(表示单人间)2(表示双人间)*/ char name[20]; /*姓名*/ char ID[19]; /*身份证号*/ int flag; /*flag 0(表示有人入住)0(表示无人入住)*/ int dingjia; /*房间定价*/ int shiji; /*实际缴纳费用*/ }room[M]; 3、函数原型声明 void welcome(); //主界面 int dengji(); //登记入住函数 int now_room(); //查询当前房间入住情况 int now_feiyong(); //查询当前费用 int tuifang(); //结账退房 int find(); //查询当前入住人数 int kfxinxi(); //客户信息

简单的学生信息管理系统C语言

#include #include //输入函数getch的头文件,不能用getchar,具体请查看两者的区别 #include //申请空间的函数malloc的头文件 typedef struct { //定义结构体类型,包含四项内容,可以自由添加 int num; char name[10]; int age; char sex[5]; }st; typedef struct node //构造结点(也是结构体变量) { st data; //数据域 struct node *next; //指针域(指向结构体,也就是自身) }list; list *create() //建立一个单链表 { list *p,*r,*head; //定义结构体指针变量 int i,n; head = (list *)malloc(sizeof(list)); //申请头结点 r = head; head->next = NULL; //头结点的指针域先定义为空 printf("请输入学生人数:\n"); scanf("%d",&n); printf("请输入学生个人信息:\n\n学号,姓名,年龄,性别\n"); for(i=1;i<=n;i++) { p = (list *)malloc(sizeof(list)); //申请一个结点 scanf("%d%s%d%s",&p->data.num,&p->https://www.doczj.com/doc/0a8799545.html,,&p->data.age,&p->data.sex); //向结点的数据域输入学生信息 p->next = NULL; r->next = p; //将头结点指向第一个结点,以此类推。 r = r->next; } return (head); //返回头结点的地址 } void output(list *h) // 输出链表中的学生信息 { list *p; p = h->next; //使p指向第一个结点 if(p == NULL)

c学生信息管理系统

洛阳理工学院 课程设计报告课程名称高级语言C#课程设计 设计题目学生信息管理系统 专业计算机科学与技术 班级 B130506 学号 姓名张葵 完成日期 课程设计任务书 设计题目:学生信息管理系统 教务员可以输入学生、教师、班级、课程信息,一个班级只属于一个专业,一个学生只属于一个班级。教务员负责输入每个专业、每个班级需要学习哪些课程,指定课程的任课教师。一个教师可以教授多个班的多门课程。 教师可以查看学习该课程的学生名单。课程结束后,教师可以录入课程成绩。 课程分两类,必修课和选修课。学生可以选修课程,每学期几门。学生可以查看自己各门课程的成绩。学生还可以进行评教,给老师打分。 系统管理员可以输入教室信息,并结合班级、课程、教室信息实现自动排课。

指导教师:张文学 2015 年 12 月 27 日 课程设计评语成绩: 指导教师:_______________ 2015 年 12 月 31 日

目录

第 1 章需求和可行性分析 需求分析 学生信息管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要。学校的管理人员可以通过电脑对学生信息进行有效的管理,避免了以往人工管理的复杂和耗时费力的劳动,也大大的能够减少管理人员的工作量,可以有效的节约学校的开支。

功能需求 作为一个学生的信息管理系统,必须要有管理人员能够进行对学生的信息进 行有效的管理,因此,系统必须预留一个管理员的登录窗口和登录之后所能进行的操作,在学生信息管理系统中,管理员具有最高的权限,可以对学生、老师、班级、专业等等进行添加、删除、修改个查询。除了拥有管理员之外,还应该拥有教务处对学生进行管理,例如:对学生课程,成绩等等具有一定的权限。此外,还应该有老师的一个权限,老师在带完一门课之后可以对学生进行一个成绩录入和平时布置作业的功能。最后是学生自己拥有的功能,学生在考试结束后可以利用系统登录自己的账户对成绩进行查询。 在学生信息管理系统中,要明确各类用户所能拥有的最高权限,如果一旦权限的问题搞错以后,整个系统就会变得没有价值。例如:学生只有对成绩的查询功能,而不能对成绩拥有修改和删除以及插入的功能。老师只能够对学生进行成绩的录入和平时布置作业,而不能删除学生的个人信息等权限。 要设立不同的异常机制,这样不会因为用户的错误的操作而使得系统瞬时奔溃。我们要在代码中设置不同的异常抛出机制,这样就可以使得用户在进行了错误的或者违反规则的操作之后,系统不会出现突然的停止运转。 可行性分析 随着计算机语言和数据服务的不断发展,使得许多的现实问题都可以利用计算机来帮助人类实现轻巧,方便的管理。在教育上,学生是一个庞大的群体,因此技术人员早早就开始想办法解决这个问题,因此,目前对于学生信息的管理各种语言都能够编写出一套完整的、可用的学生信息管理系统。 技术可行性 在这套系统的开发中,采用的是开发语言是C#,软件是Visio Studio2010,C#是微软对问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft?平台的应用程序,Microsoft .NET提供

c语言课程设计宿舍管理系统

... 《面向过程程序设计》┊┊计程设课 课程名称:学生宿舍管理系统

院系: 级:班学号: 姓名: 指导教师: .. ... 目录 1. 2.引言………………………………………………………2. 3.课程设计 任务书…………………………………………a)设计目的 设计要求 b)课程设计报告装订内容及顺序c) 设计题目 d)3.3………………………………………….程序设计说明书 4..4………………课程设计目的……………………………a)目的 b)实验内容 c)需求分析 5..5………程序基本框架结构图…………………………… 6..6………………程序测试………………………………… 7..8………课 程设计总结……………………………………8..18………附录(源代码)………………………………… 引言 ..

... 学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目 前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记 录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞 大,需要记录存档的数据的高校来说,人工记录是相当麻烦的。而且 当查找某条记录时,由于数据量庞大,还只能靠人工一条条去查找, 这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进 步的而世界,原始的记录方式已经被社会所淘汰,计算机化管理正是 适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术 不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天, 信息社会占着主流地位,,计算机在各行各业中的运用已经得到普及, 自动化、信息化的管理越来越广泛应用于各个领域。故随着宿舍需要 管理的信息快速增长,建立一个宿舍管理系统可使宿舍管理人员的管 理工作系统化、规范化、自动化,大大提高管理效率。 课程设计任务书 一、设计目的 通过本次课程设计使学生进一步加深对C语言课程内容的理解,初步掌握一般应用程序的开发方法和步骤,进一步了解与掌握C语言的编程方法和技巧,提高学生用C语言解决实际问题的能力。 .. ...

相关主题
文本预览