精华内容
下载资源
问答
  • 宿舍管理系统C语言源代码 #includestruct dorm{int num;int members_num;int Health_score;char member1[10];char member2[10];char member3[10];char member4[10];};struct student{int num;char name[10];int dorm...

    41528d3028836879cd698677c3999917.gif宿舍管理系统C语言源代码

    #includestruct dorm{int num;int members_num;int Health_score;char member1[10];char member2[10];char member3[10];char member4[10];};struct student{int num;char name[10];int dorm_num;char gender[10];char major[10];char class_name[10];char instructor[10];};static struct dorm dm[100];static struct student st[400];static int d_i=2;static int s_i=2;void pri_dorm(struct dorm d){printf(“\n 宿 舍 号:%d\n“,d.num);printf(“现住人数:%d\n“,d.members_num);printf(“卫生分数:%d\n“,d.Health_score);printf(“宿舍成员:\n“);if(d.member1[0]!=NULL) printf(“%s\n“,d.member1);if(d.member2[0]!=NULL) printf(“%s\n“,d.member2);if(d.member3[0]!=NULL) printf(“%s\n“,d.member3);if(d.member4[0]!=NULL) printf(“%s\n“,d.member4);printf(“\n“);}void pri_student(struct student s){printf(“\n 学 号:%d\n“,s.num);printf(“姓 名:%s\n“,s.name);printf(“宿舍号:%d\n“,s.dorm_num);printf(“性 别:%s\n“,s.gender);printf(“班 级:%s\n“,s.class_name);printf(“专 业:%s\n“,s.major);printf(“辅导员:%s\n“,s.instructor);printf(“\n“);}int panduansusherenshu(struct dorm d)//通过此函数,判断宿舍共多少人(宿舍人数最多住四个人){int i=0;if(d.member1[0]!=NULL){i++;}if(d.member2[0]!=NULL){i++;}if(d.member3[0]!=NULL){i++;}if(d.member4[0]!=NULL){i++;}return i;}int panduanxueshengxinxi(struct student s)//判断学生信息是否合法{int i=1;int j=0;int k=0;if(((s.num/100000000)0)){if(!strcmp(s.gender,“男“)||!strcmp(s.gender,“女“)){if((s.dorm_num/100)0){i=0;}}}for(j=0;j=0else {printf(“输入的分数有错误,请重新输入!\n“);}}dm[k].Health_score=j;system(“cls“);printf(“更改宿舍信息成功!\n“);printf(“\n 返回主界面:\n“);main_interface();}if(q==0){system(“cls“);printf(“输入的宿舍号不存在,请确认后重新输入!\n\n“);interface5();} }void interface6()//更改学生信息{int i=0;//存储学生学号int k=0;//判断该学号是否存在int j=0;int q=0;//存储选项struct student ss;printf(“请输入需要被更改的学生的学号:\n“);scanf(“%d“,for(j=0;jsizeof(st)/60;j++){if(st[j].num==i){k=1;break;}}if(k==0){printf(“该学号不存在,请确认后重新输入!\n“);interface6();}if(k==1){printf(“********************************\n“);printf(“****** 学生信息更改 ******\n“);printf(“*** 1.更改姓名 ***\n“);printf(“*** 2.更改班级 ***\n“);printf(“*** 3.更改专业 ***\n“);printf(“*** 4.更改辅导员 ***\n“);printf(“********************************\n“);printf(“\n 请输入选项:\n“);scanf(“%d“,switch(q){case 1:printf(“请输入改变后的姓名:\n“);scanf(“%s“,ss.name);strcpy(st[j].name,ss.name);system(“cls“);printf(“\n 更改信息成功,返回主界面!\n“);main_interface();break;case 2:printf(“请输入改变后的班级:\n“);scanf(“%s“,ss.class_name);strcpy(st[j].class_name,ss.class_name);system(“cls“);printf(“\n 更改信息成功,返回主界面!\n“);main_interface();break;case 3:printf(“请输入改变后的专业:\n“);scanf(“%s“,ss.major);strcpy(st[j].major,ss.major);system(“cls“);printf(“\n 更改信息成功,返回主界面!\n“);main_interface();break;case 4:printf(“请输入改变后的辅导员:\n“);scanf(“%s“,ss.instructor);strcpy(st[j].instructor,ss.instructor);system(“cls“);printf(“\n 更改信息成功,返回主界面!\n“);main_interface();break;default :system(“cls“);printf(“选项输入错误! 返回上一界面!\n“);interface6();break;}}}void start(){int j=103;int i=0;dm[0].num=101;dm[0].Health_score=10;dm[0].member1[0]=NULL;strcat(dm[0].member1,“赵钱 “);dm[0].member2[0]=NULL;dm[0].member3[0]=NULL;dm[0].member4[0]=NULL;dm[0].members_num=panduan

    展开全文
  • 学生宿舍管理系统C语言代码一、需求分析该程序是由C语言编写的一个宿舍管理查询软件,其主要功能是实现对学生信息的增加、删除、修改、查询、排序、存储、加载。其中查询可以分别以姓名、学号、寝室号为关键字查询...

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

    一、需求分析

    该程序是由C语言编写的一个宿舍管理查询软件,其主要功能是实现对学生信息的增加、删除、修改、查询、排序、存储、加载。其中查询可以分别以姓名、学号、寝室号为关键字查询学生信息。排序可以分别以学号和寝室号为关键字进行从小到大的排序。

    ①输入的形式:根据用户所选择的功能,然后再依据程序相应的提示进行输入: 选择功能1(添加学生信息):按照从先到后的顺序输入学生姓名(30个字符以内),学

    生学号(15个字符以内),宿舍号码(整数,范围在0~32767)。

    选择功能2(修改学生信息):按照从先到后的顺序输入要修改的学生姓名(30个字符以

    内),修改后学生的姓名(30个字符以内),修改后学生的学号(15个字符以内),修改后学生的宿舍号(整数,范围在0~32767)。

    选择功能3(删除学生信息):输入要删除的学生姓名(30个字符以内)。 选择功能4(以姓名查询学生信息):输入要查找的学生的姓名(30个字符以内)。 选择功能5(以学号查询学生信息):输入要查找的学生的学号(15个字符以内)。 选择功能6(以寝室号查询学生信息):输入寝室号(整数,范围在0~32767)。

    ②输出的形式:根据用户所选择的功能不同,会有不同的输出: 选择功能1(添加学生信息):根据程序的判断会输出添加成功或者添加失败。 选择功能2(修改学生信息):根据程序的判断会输出修改成功或者修改失败。 选择功能3(删除学生信息):根据程序的判断会输出删除成功或者删除失败。 选择功能4(以姓名查询学生信息):根据程序的判断,如果查找成功,则会输出相应的

    学生信息,反之,则会输出查找失败。

    选择功能5(以学号查询学生信息):根据程序的判断,如果查找成功,则会输出相应的

    学生信息,反之,则会输出查找失败。

    选择功能6(以寝室号查询学生信息):根据程序的判断,如果查找成功,则会输出相应

    的学生信息,反之,则会输出查找失败。

    选择功能7,8(以寝室号和学号为关键字进行从小到大的排序):程序会输出排序成功。 选择功能9(显示所有学生的信息):程序会输出所有以存学生的信息。 选择功能10(保存操作):根据程序的判断会输出保存成功或者保存失败。 选择功能11(加载记录):根据程序的判断会输出加载记录成功或者加载记录失败。 ③测试数据: 对功能1(添加学生信息)的测试:向程序中添加三条记录

    按照先后顺序分别输入:学生姓名:张三,学生学号:20070001,宿舍号:502 学生姓名:李四,学生学号:20070003,宿舍号:502 学生姓名:王五,学生学号:20070002,宿舍号:503 对功能2(修改学生信息)的测试:修改学生王五的信息

    按照先后顺序分别输入:学生姓名:王五,学生姓名:王五,学生学号:20070005,宿

    舍号:501

    对功能3(删除学生信息)的测试:删除学生李四的信息 输入:学生姓名:李四

    对功能4(以姓名查询学生信息)的测试:查询学生王五的信息 输入:学生姓名:王五

    对功能5(以学号查询学生信息)的测试:查询学号为20070001的信息 输入:学生学号:20070001

    对功能6(以寝室号查询学生信息)的测试:查询寝室号为501的信息

    展开全文
  • 《学生宿舍管理系统 C语言编程》由会员分享,可在线阅读,更多相关《学生宿舍管理系统 C语言编程(22页珍藏版)》请在人人文库网上搜索。1、“学生宿舍管理系统” C C 语言课程设计报告语言课程设计报告 一、一、 程序...

    《学生宿舍管理系统 C语言编程》由会员分享,可在线阅读,更多相关《学生宿舍管理系统 C语言编程(22页珍藏版)》请在人人文库网上搜索。

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

    2、查询软件,程序在 Microsoft Visual C+ 6.0 下运行,其主要功能是实现对学生信息的录入、添加、删除、修改、查询、统计。其中 查询可以分别以姓名、 学号、 宿舍号为关键字查询学生信息。 统计可以分别以学号、 宿舍号、 性别、班级、专业为关键字进行统计,并且输出信息按学号大小从小到大输出。 三、三、 源程序分析源程序分析 1)1) 结构分析结构分析 1.方案设计 。1 。 主 函 数 录 入 模 块 添 加 模 块 修 改 模 块 删 除 模 块 查 询 模 块 统 计 模 块 退 出 系 统 学 号 姓 名 班 级 宿 舍 性 别 年 龄 专 业 返 回 按 姓 名 按 学 。

    3、号 按 宿 舍 返按 回学 号 按 宿 舍 按 性 别 按按 班专 级业 返 回 2.数据结构说明 程序中数据主要是学生信息,具体属于类型如下: struct st_message char name20; /*学生姓名*/ char dorm7; /*宿舍号*/ char num10; /*学号*/ char sex5; /*性别*/ char age4; /*年龄*/ char major20; /*专业*/ char classs8; /*班级*/ 3. 模块功能说明 第一录入模块:调用 input_message(),对住宿学生信息进行录入。 第二添加模块:调用 append_mess。

    4、age(),对新来学生信息进行添加录入。 第三修改模块:调用 revise_message(),对需修改学生的信息进行修改。 第四删除模块:调用 delete_message(),对某一学生信息进行删除操作。 第五查询模块:调用 find_message(),分别以姓名、学号、宿舍号对学生信息进行查 询。 第六统计模块:调用 census_message(),分别以学号、宿舍号、性别、班级、专业方 式对学生信息进行统计,并按学号由小到大输出。 四、四、 编程中遇到的问题及解决方法编程中遇到的问题及解决方法 在调试过程中, 时常会出现输入或显示为乱码的情况, 这可能是上下定义的数据类型不 同或定。

    5、义数组长度不够所导致的。有时候程序中还会出现录入五个数据而只显示四个的情 况, 这也经常是因为定义的结构体数组长度过低所造成的。 像这些问题只要把数据类型都定 义成字符型,并且定义一个合理的数组长度一般都能解决。 在调试过程中我遇到最大的问题出现在删除模块。在运用“rt+”打开文件并对某一数 据进行删除后,往往显示会多显示一行数据。这是由于“rt+”写数据时只会覆盖数据而不 会清除原文件数据,因此文件最后一行数据总会保留在原文件中。后来我先用“ rt”打开文 件并读取文件中的数据,然后再用“ wt”打开原文件将删除后的数据重新写入文件,最终成 功运行。 。2 。 五、五、 程序运行截屏与结果分。

    6、析程序运行截屏与结果分析 1. 测试数据 对功能 1(录入学生信息)的测试:按照先后顺序分别输入学生信息: 学号姓名班级宿舍号 性别年龄专业 05111101 张三 051111 429女 18土木工程 04111102 李四 041111 218男 18信息工程 对功能 2(添加学生信息)的测试:按照先后顺序分别输入学生信息: 学号姓名班级宿舍号 性别年龄专业 02111101 陈红 021111 429女 18机械系 03111203 赵娜 031112 101女 18能源与环境 对功能 3(修改学生信息)的测试:输入要修改学生的姓名:林丹,系统显示“该学生 信息不存在” 。 输入修改学生。

    7、姓名: 张三, 系统显示出该学生信息。 选择修改学号为: 05111118, 系统显示出修改后的学生信息。 对功能 4(删除学生信息)的测试:输入要删除学生的学号: 03111210,系统显示“该 学生信息不存在” 。输入要删除的学生的学号:03111203,系统显示出该学生信息。选择删 除该学生信息。 对功能 5(查询学生信息)的测试:查询宿舍号为429 的信息,系统显示为: 学号姓名班级宿舍号性别年龄专业 02111101 陈红 021111 429女 18机械系 05111101 张三 051111 429女 18土木工程 对功能 6(统计学生信息)的测试:选择按学号统计,系统显示为: 。

    8、学号姓名班级宿舍号性别年龄专业 02111101 陈红 021111 429女 18机械系 04111102 李四 041111 218男 18信息工程 05111101 张三 051111 429女 18土木工程 学生总人数 3 人,其中男生 1 人,女生 2 人。 对功能 7(退出系统)的测试:选择退出系统,程序关闭。 2. 详细设计及运行结果 1) 函数调用关系图 。3 。 2) 部分模块流程图及运行结果截屏 主页界面 主页流程图 开始 功能选择 是 选 1 否 选 2 否 是 选 3 否 选 4 否 选 5 是 。 录入模块 是 添加模块 修改模块 是 删除模块 4 。 查询模块 否 。

    9、选 6 是 统计模块 录入界面 否 选 0 退出系统 结束 。5 。 输入姓名 输入班级 输入宿舍 输入学号 输入性别 输入年龄 输入专业 Y 是 否 继 续录入 N 结束 录入界面 修改模块 。6 。 输入要修改学 生的姓名 功能选择 是 选 1 否 选 2 是 修改学号 修改姓名 否 选 3 否 是 修改班级 是 选 4 否 是 选 5 是 否 选 6 修改宿舍 修改性别 修改年龄 否 选 7 是 修改专业 返回主页 选 8 否 是否继续 是 结束 。7 。 修改界面 统计模块 输入统计方式 功能选择 是 选 1 否是 按学号 选 2 否是 按宿舍 选 3 否 是 按性别 选 4 否 是 。

    10、按班级 选 5 否是 按专业 选 6 返回主页 结束 。8 。 统计界面 六、六、 心得体会心得体会 “万事开头难” 这句话在我编写程序的过程中得到了真正的体现。 在最初编写的几天里 出现了这样那样的错误一大堆, 这主要是由于我对基础知识掌握不扎实所造成的。 但是随后 几天里, 我对课本知识进行了回顾并不时的向老师和同学进行请教, 慢慢的对编写程序也开 始得心应手起来。 程序的编写总归是一件费时费力的事情, 但只要我们认真编写和调试最后 总能成功。 短短以周实习时间我收获颇多, 我相信经过这次实习必将为我以后的深入学习打下扎实 的基础。 七、七、 源程序源程序 #include #includ。

    11、e #include #include #define N 900 struct st_message /*学生信息*/ char name20; /*学生姓名*/ char dorm7; /*宿舍号*/ char num10; /*学号*/ char sex5; /*性别*/ char age4; /*年龄*/ char major20; /*专业*/ char classs8; /*班级*/ stN,t; 。9 。 sort_message() /*排序模块*/ int i,j,fno,fsize,fnum; FILE *fp; fp=fopen(student.txt,rt+); if(。

    12、fp=NULL) printf(nn*文件打开错误。按任意键退出!); getchar(); exit(1); fno=fileno(fp); fsize=filelength(fno); fnum=fsize/sizeof(struct st_message); for(i=0;ifnum;i+) fread( for(i=0;ifnum-1;i+) for(j=i+1;j0) t=sti; sti=stj; stj=t; rewind(fp); for(i=0;ifnum;i+) fwrite( fclose(fp); input_message() /*录用信息模块*/ int i; c。

    13、har choice; FILE *fp; fp=fopen(student.txt,at+); if(fp=NULL) printf(nn*库存文件不存在!请建立。按任意键退出!); getchar(); exit(1); for (i=0;i+) system (cls); getchar(); printf(请输入学生姓名:); gets(sti.name); printf(n 请输入学生班级:); 。10 。 gets(sti.classs); printf(n 请输入学生宿舍号:); gets(sti.dorm); printf(n 请输入学生学号:); gets(sti.num);。

    14、 printf(n 请输入学生性别:); gets(sti.sex); printf(n 请输入学生年龄:); gets(sti.age); printf(n 请输入学生专业:); gets(sti.major); fwrite( printf(输入成功!n 是否继续录入(Y/N)?); choice=getchar(); if(choice=y|choice=Y) continue; else fclose(fp); break; append_message() /*添加模块*/ int i; char choice; FILE *fp; fp=fopen(student.txt,at+)。

    15、; if(fp=NULL) printf(nn*库存文件不存在!请建立。按任意键退出!); getchar(); exit(1); for (i=0;i+) struct st_message stN; system (cls); getchar(); printf(请输入所添加学生姓名:); gets(sti.name); printf(n 请输入所添加学生班级:); gets(sti.classs); printf(n 请输入所添加学生宿舍号:); gets(sti.dorm); printf(n 请输入所添加学生学号:); gets(sti.num); printf(n 请输入所添加学生。

    16、性别:); 。11 。 gets(sti.sex); printf(n 请输入所添加学生年龄:); gets(sti.age); printf(n 请输入所添加学生专业:); gets(sti.major); fwrite( printf(输入成功!n 是否继续添加(Y/N)?); choice=getchar(); if(choice=y|choice=Y) continue; else fclose(fp); break; revise_message() /*修改模块*/ int i,choice,flag,fno,fsize,fnum; char re_name20,s20; FILE。

    17、 *fp; do fp=fopen(student.txt,rt+); fno=fileno(fp); fsize=filelength(fno); fnum=fsize/sizeof(struct st_message); system(cls); gets(s); printf(请输入需要修改的学生姓名:); gets(re_name); for (i=0;ifnum;i+) fread( if(!strcmp(re_name,sti.name) printf(n -该学生信息-nn); printf(学号-姓名-班级-宿舍号-性别-年龄-专业 -n); printf(-n); print。

    18、f(%-8s %-6s %-4s %-6s %-4s %-4s %-20sn,sti.num,sti. name, sti.classs,sti.dorm,sti.sex,sti.age,sti.major); printf(您要修改哪一项?n); printf(1.学号n); 。12 。 printf(2.姓名n); printf(3.班级n); printf(4.宿舍号n); printf(5.性别n); printf(6.年龄n); printf(7.专业n); printf(8.返回主页n); scanf(%d, switch(choice) case 1:printf(n 请输入修改。

    19、后的学号:); scanf(%s,sti.num);break; case 2:printf(n 请输入修改后的姓名:); scanf(%s,sti.name);break; case 3:printf(n 请输入修改后的班级:); scanf(%s,sti.classs);break; case 4:printf(n 请输入修改后的宿舍号:); scanf(%s,sti.dorm);break; case 5:printf(n 请输入修改后的性别:); scanf(%s,sti.sex);break; case 6:printf(n 请输入修改后的年龄:); scanf(%s,sti.age。

    20、);break; case 7:printf(n 请输入修改后的专业:); scanf(%s,sti.major);break; case 8:return 1; getchar(); system(cls); printf(n -修改后的学生信息-nn); printf(学号-姓名-班级-宿舍号-性别-年龄-专业 -n); printf(-n); printf(%-8s %-6s %-4s %-6s %-4s %-4s %-20sn,sti.num,sti. name, sti.classs,sti.dorm,sti.sex,sti.age,sti.major); rewind(fp); f。

    21、seek(fp,sizeof(struct st_message)*i,0); fwrite( fclose(fp); break; if(i=fnum) printf(n 该学生信息不存在!); 。13 。 printf(nn 继续修改吗?(Y/N); choice=getchar(); if(choice=Y|choice=y) flag=1; system(pause); else flag=0; while(flag=1); return 1; delete_message() /*删除模块*/ int i,j,choice,fno,fsize,fnum; char d_num10; 。

    22、FILE *fp; system(cls); getchar(); fp=fopen(student.txt,rt); if(fp=NULL) printf(nn*库存文件不存在!请先建立。按任意键退出!); getchar(); exit(1); fno=fileno(fp); fsize=filelength(fno); fnum=fsize/sizeof(struct st_message); for(i=0;ifnum;i+) fread( printf(请输入需要删除学生的学号:n); gets(d_num); system(cls); for(i=0;ifnum;i+) if(!s。

    23、trcmp(d_num,sti.num) printf(n -该学生信息-nn); printf(学号-姓名-班级-宿舍号-性别-年龄-专业-n); printf(-n); printf(%-8s %-6s %-4s %-6s %-4s %-4s %-20sn,sti.num,sti. name, sti.classs,sti.dorm,sti.sex,sti.age,sti.major); printf(n 是否删除该学生信息:n); printf(1.是n); printf(2.否n); scanf(%d, switch(choice) 。14 。 case 1:for(j=i;jfnum。

    24、-1;j+) stj=stj+1; rewind(fp); fp=fopen(student.txt,wt); for(i=0;ifnum-1;i+) fwrite( fclose(fp); getchar(); break; case 2:printf(按任意键返回主菜单!); getchar(); return 0; break; if(i=fnum) printf(所查学生信息不存在,按任意键返回主菜单!); getchar(); return 0; printf(删除信息成功,按任意键返回主菜单!); return 1; find_message() /*查找信息模块*/ int i,。

    25、choice,flag,fno,fsize,fnum; char f_name20; char f_num10; char f_dorm7; FILE *fp; system(cls); do sort_message(); fp=fopen(student.txt,rt); if(fp=NULL) printf(nn*库存文件不存在!请先建立。按任意键退出!); getchar(); exit(1); fno=fileno(fp); fsize=filelength(fno); fnum=fsize/sizeof(struct st_message); system(cls); printf。

    26、(请选择查询方式:n); 。15 。 printf(1.按姓名查询n); printf(2.按学号查询n); printf(3.按宿舍号查询n); printf(4.返回主页n); scanf(%d, system(cls); getchar(); switch(choice) case 1:printf(请输入需要查询的姓名:n); gets(f_name); printf(n -该学生信息-nn); printf(学号-姓名-班级-宿舍号 -性别-年龄-专业 -n); printf(-n); for (i=0;ifnum;i+) if(!strcmp(f_name,sti.name) pr。

    27、intf(%-8s %-6s %-4s %-6s %-4s %-4s %-20sn,sti.num,sti. name, sti.classs,sti.dorm,sti.sex,sti.age,sti.major); printf(-n); break; case 2:printf(请输入要查询的学号:); gets(f_num); printf(n -该学生信息-nn); printf(学号-姓名-班级-宿舍号 -性别-年龄-专业 -n); printf(-n); for (i=0;ifnum;i+) fread( if(!strcmp(f_num,sti.num) printf(%-8s 。

    28、%-6s %-4s %-6s %-4s %-4s %-20sn,sti.num,sti. name, sti.classs,sti.dorm,sti.sex,sti.age,sti.major); printf(-n); break; case 3:printf(请输入要查询的宿舍号:); 。16 。 gets(f_dorm); printf(n -该宿舍学生信息-nn); printf(学号-姓名-班级-宿舍号 -性别-年龄-专业 -n); printf(-n); rewind(fp); for (i=0;ifnum;i+) fread( if(!strcmp(f_dorm,sti.dorm。

    29、) printf(%-8s %-6s %-4s %-6s %-4s %-4s %-20sn,sti.num,sti. name, sti.classs,sti.dorm,sti.sex,sti.age,sti.major); printf(-n); break; case 4:return 0; printf(nn 继续查询吗?(Y/N); choice=getchar(); if(choice=Y|choice=y) flag=1; system(pause); else flag=0; while(flag=1); return 1; census_message() /*统计信息模块*/。

    30、 int i,choice,fno,fsize,fnum; int m=0,n=0,k=0; char dorm7; char classs8; char major20; FILE *fp; sort_message(); fp=fopen(student.txt,rt); if(fp=NULL) printf(nn*文件打开错误。按任意键退出!); getchar(); 。17 。 exit(1); fno=fileno(fp); fsize=filelength(fno); fnum=fsize/sizeof(struct st_message); system(cls); printf。

    31、(请选择显示方式:n); printf(1.按学号显示n); printf(2.按宿舍号显示n); printf(3.按性别显示n); printf(4.按班级显示n); printf(5.按专业显示n); printf(6.返回主页n); scanf(%d, system(cls); switch(choice) case 1: printf(n -学生信息-nn); printf(学号-姓名-班级-宿舍号-性别-年龄-专业 -n); printf(-n); for(i=0;ifnum;i+) fread( printf(%-8s %-6s %-4s %-6s %-4s %-4s %-20s。

    32、n,sti.num,sti .name, sti.classs,sti.dorm,sti.sex,sti.age,sti.major); k+; if(!strcmp(sti.sex,男) m+; if(!strcmp(sti.sex,女) n+; printf(-n); printf(nn 学生总人数为%d,其中男生为%d,女生为%d。 ,k,m,n); break; case 2: getchar(); printf(请输入要显示的宿舍号:); gets(dorm); printf(n -该宿舍学生信息-nn); printf(学号-姓名-班级-宿舍号-性别-年龄-专业 -n); for 。

    33、(i=0;ifnum;i+) 。18 。 if(!strcmp(dorm,sti.dorm) printf(-n); printf(%-8s %-6s %-4s %-6s %-4s %-4s %-20sn,sti.num,sti. name, sti.classs,sti.dorm,sti.sex,sti.age,sti.major); break; case 3:printf(请输入需要显示的性别:n); printf(1.男n); printf(2.女n); scanf(%d, printf(n -学生信息-nn); printf(学号-姓名-班级-宿舍号-性别-年龄-专业 -n); pr。

    34、intf(-n); switch(choice) case 1: for(i=0;ifnum;i+) if(!strcmp(sti.sex,男) printf(%-8s %-6s %-4s %-6s %-4s %-4s %-20sn,sti.num,sti .name, sti.classs,sti.dorm,sti.sex,sti.age,sti.major); m+; printf(-n); printf(nn 男生人数为%d。,m); break; case 2: for(i=0;ifnum;i+) if(!strcmp(sti.sex,女) printf(%-8s %-6s %-4s 。

    35、%-6s %-4s %-4s %-20sn,sti.num,sti .name, sti.classs,sti.dorm,sti.sex,sti.age,sti.major); n+; printf(-n); printf(nn 女生人数为%d。,n); 。19 。 break; break; case 4: getchar(); printf(请输入要显示的班级:); gets(classs); printf(n -该班级学生信息-nn); printf(学号-姓名-班级-宿舍号-性别-年龄-专业 -n); printf(-n) ; for (i=0;ifnum;i+) if(!strcmp。

    36、(classs,sti.classs) printf(%-8s %-6s %-4s %-6s %-4s %-4s %-20sn,sti.num,sti .name, sti.classs,sti.dorm,sti.sex,sti.age,sti.major); k+; if(!strcmp(sti.sex,男) m+; if(!strcmp(sti.sex,女) n+; printf(-n); printf(nn 该班学生总人数为 %d,其中男生为 %d,女生为 %d。 ,k,m,n); break; case 5: getchar(); printf(请输入要显示的专业:); gets(ma。

    37、jor); printf(n -该专业学生信息-nn); printf(学号-姓名-班级-宿舍号-性别-年龄-专业 -n); printf(-n) ; for (i=0;ifnum;i+) if(!strcmp(major,sti.major) printf(%-8s %-6s %-4s %-6s %-4s %-4s %-20sn,sti.num, sti.name, sti.classs,sti.dorm,sti.sex,sti.age,sti.major); k+; 。20 。 if(!strcmp(sti.sex,男) m+; if(!strcmp(sti.sex,女) n+; prin。

    38、tf(-n) ; printf(nn 该专业学生总人数为%d,其中男生为%d,女生为%d。 ,k,m,n); break; case 6: return 0; fclose(fp); system(pause); return 1; void main() int choice; do system(cls); /*清屏*/ printf(nnn* 学 生 宿 舍 管 理 系 统 *nn); printf( 1.录入学生信息nn); printf( 2.添加学生信息nn); printf( 3.修改学生信息nn); printf( 4.删除学生信息nn); printf( 5.查找学生信息nn。

    39、); printf( 6.统计学生信息nn); printf( 0.退出系统nn); printf(请选择 0-6:); scanf(%d, switch(choice) case 1: input_message();break; case 2: append_message();break; case 3: revise_message();break; case 4: delete_message();break; case 5: find_message();break; case 6: census_message();break; case 0: break; while(choice!=0); 。21 。 欢迎您的下载,欢迎您的下载, 资料仅供参考!资料仅供参考! 致力为企业和个人提供合同协议, 策划案计划书,学习课件等等 打造全网一站式需求 。22。

    展开全文
  • C语言宿舍管理系统源程序
  • “学生宿舍管理系统”C语言课程设计报告程序功能简介我设计的是“学生宿舍管理系统”,主要是针对住宿学生个人信息的管理,适用对象主要是学校,以方便学校对住宿学生的管理。包括学生的姓名、学号、性别、专业、...

    “学生宿舍管理系统”

    C语言课程设计报告

    程序功能简介

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

    课程设计要求

    该程序是由C语言编写的一个学生宿舍管理查询软件,程序在Microsoft Visual C++ 6.0下运行,其主要功能是实现对学生信息的录入、添加、删除、修改、查询、统计。其中查询可以分别以姓名、学号、宿舍号为关键字查询学生信息。统计可以分别以学号、宿舍号、性别、班级、专业为关键字进行统计,并且输出信息按学号大小从小到大输出。

    源程序分析

    结构分析

    方案设计

    主函数

    主函数

    录入模块

    添加模块

    修改模块

    删除模块

    查询模块

    统计模块

    退出系统

    学号

    姓名

    班级

    宿舍

    性别

    年龄

    专业

    返回

    按姓名

    按学号

    按宿舍

    返回

    按学号

    按宿舍

    按性别

    按班级

    按专业

    返回

    数据结构说明

    程序中数据主要是学生信息,具体属于类型如下:

    struct st_message

    char name[20]; /*学生姓名*/

    char dorm[7]; /*宿舍号*/

    char num[10]; /*学号*/

    char sex[5]; /*性别*/

    char age[4]; /*年龄*/

    char major[20]; /*专业*/

    char classs[8]; /*班级*/

    模块功能说明

    第一录入模块:调用input_message(),对住宿学生信息进行录入。

    第二添加模块:调用append_message(),对新来学生信息进行添加录入。

    第三修改模块:调用revise_message(),对需修改学生的信息进行修改。

    第四删除模块:调用delete_message(),对某一学生信息进行删除操作。

    第五查询模块:调用find_message(),分别以姓名、学号、宿舍号对学生信息进行查询。

    第六统计模块:调用census_message(),分别以学号、宿舍号、性别、班级、专业方式对学生信息进行统计,并按学号由小到大输出。

    编程中遇到的问题及解决方法

    在调试过程中,时常会出现输入或显示为乱码的情况,这可能是上下定义的数据类型不同或定义数组长度不够所导致的。有时候程序中还会出现录入五个数据而只显示四个的情况,这也经常是因为定义的结构体数组长度过低所造成的。像这些问题只要把数据类型都定义成字符型,并且定义一个合理的数组长度一般都能解决。

    在调试过程中我遇到最大的问题出现在删除模块。在运用“rt+”打开文件并对某一数据进行删除后,往往显示会多显示一行数据。这是由于“rt+”写数据时只会覆盖数据而不会清除原文件数据,因此文件最后一行数据总会保留在原文件中。后来我先用“rt”打开文件并读取文件中的数据,然后再用“wt”打开原文件将删除后的数据重新写入文件,最终成功运行。

    程序运行截屏与结果分析

    测试数据

    对功能1(录入学生信息)的测试:按照先后顺序分别输入学生信息:

    学号 姓名 班级 宿舍号 性别 年龄 专业张三 051111 429 女 18 土木工程李四 041111 218 男 18 信息工程

    对功能2(添加学生信息)的测试:按照先后顺序分别输入学生信息:

    学号 姓名 班级 宿舍号 性别 年龄 专业陈红 021111 429 女 18 机械系赵娜 031112 101 女 18 能源与环境

    对功能3(修改学生信息)的测试:输入要修改学生的姓名:林丹,系统显示“该学生信息不存在”。输入修改学生姓名:张三,系统显示出该学生信息。选择修改学号为系统显示出修改后的学生信息。

    对功能4(删除学生信息)的测试:输入要删除学生的学号系统显示“该学生信息不存在”。输入要删除的学生的学号系统显示出该学生信息。选择删除该学生信息。

    对功能5(查询学生信息)的测试:查询宿舍号为429的信息,系统显示为:

    学号 姓名 班级 宿舍号 性别 年龄 专业陈红 021111 429 女 18 机械系张三 051111 42

    展开全文
  • 《学生宿舍管理软件C语言源代码完整版》由会员分享,可在线阅读,更多相关《学生宿舍管理软件C语言源代码完整版(8页珍藏版)》请在人人文库网上搜索。1、源程序代码:#include#includeTotal.S_number);getchar();S_...
  • 学生宿舍管理软件C语言源代码完整版一、需求分析该程序是由C语言编写的一个宿舍管理查询软件,其主要功能是实现对学生信息的增加、删除、修改、查询、排序、存储、加载。其中查询可以分别以姓名、学号、寝室号为...
  • 宿舍查询系统C语言

    2010-04-20 12:48:35
    该程序是由C语言编写的一个宿舍管理查询软件,其主要功能是实现对学生信息的增加、删除、修改、查询、排序、存储、加载。其中查询可以分别以姓名、学号、寝室号为关键字查询学生信息。排序可以分别以学号和寝室号为...
  • 课程设计——宿舍管理系统c语言

    千次阅读 2021-01-20 22:32:27
    printf("\t\t |--------| 宿舍管理查询 |-------|\n"); printf("\t\t | | | |\n"); printf("\t\t | ======================== |\n"); printf("\t\t | |\n"); printf("\t\t | 请选择你的操作 : |\n"); printf...
  • C语言课程设计,学生宿舍管理系统, 链表、文件版,纯原创,仅供参考!
  • 实用文案标准文档“学生宿舍管理系统”C语言课程设计报告程序功能简介我设计的是“学生宿舍管理系统”,主要是针对住宿学生个人信息的管理,适用对象主要是学校,以方便学校对住宿学生的管理。包括学生的姓名、学号...
  • 学生宿舍管理系统 C语言课程设计报告 一程序功能简介 我设计的是学生宿舍管理系统主要是针对住宿学生个人信息的管理适用对象主 要是学校以方便学校对住宿学生的管理 包括学生的姓名 学号性别专业班级等等 在编写过程...
  • 功能包含添加、删除,按学号查找记录,按姓名查找记录以及记录的添加修改删除。完美运行,课程设计必备,建议参考,自己编写才真的可以学到东西。想学到东西还得自动动手。.../*查询系统*/int search_stunam...
  • C语言程序设计》课程设计报告题 目: 学生宿舍管理系统专 业: 软件技术班 级: 软件技术1班姓 名: 李桦楠 齐忠春 周滨滨徐烨 潘喜隆 郑竹强学 号: 124109124 124109131 124109150124109143 124109127 124...
  • 这是一个学生宿舍管理系统的C语言版。想学习C语言的朋友可以借鉴借鉴。
  • c语言系统,一般的介绍宿舍管理,符合一般初学者完成课堂老师布置的作业,解决燃眉之急
  • C语言宿舍管理系统

    2012-10-08 09:42:15
    用纯C语言编写的简单的宿舍管理系统。包括文件的读写,信息的输入和输入;主要功能包括增删改、查看、检索等;输入输出在Dos界面。
  • //学生所在寝室的宿舍号 char S_address[500]; //学生地址 int S_phone[20]; //学生电话号码 int Total; //学生总数 }Student[M],St; //判断学号是否与表中所存学号重复 void S_number_Judge(Student S,int t) { ...
  • 宿舍管理查询 数据结构课程设计 完整源代码 c语言编写 分模块设计
  • 四、功能模块说明输入学生宿舍信息...查询学生宿舍信息模块,完成按关键字查询的功能,可以选择按宿舍号、学号或姓名进行查询。浏览学生宿舍信息模块,完成对已经输入的信息的打印浏览,如果没有向系统输入数据,...
  • 大学宿舍管理系统 C语言实现

    千次阅读 多人点赞 2018-12-08 14:00:13
    废话不说,先上代码(本文最后有测试数据): 代码: ...typedef struct pnode //结构体定义 用于存放学生信息的节点 ... printf("%40s\n", "平顶山学院宿舍管理系统"); printf("-------------...
  • C语言——学生宿舍管理系统》由会员分享,可在线阅读,更多相关《C语言——学生宿舍管理系统(14页珍藏版)》请在人人文库网上搜索。1、include#include#include /定义学生结构体 struct Studentint dorNo; /宿舍号...
  • 宿舍管理人员设计一个宿舍管理查询系统,程序采用交互工作方式;实现下列功能:建立合适的数据结构作为查找表并输入数据;数据分别按关键字姓名、学号、宿舍号进行排序;设计查询菜单,分别按关键字姓名、学号、...
  • C语言课程设计之宿舍管理系统

    千次阅读 2020-12-27 11:44:45
    宿舍管理系统C语言源码 内容摘要 学生宿舍管理系统时应对学生宿舍管理的现代化、网络化,逐步摆脱学生宿舍管理的人工管理方式,提高学生宿舍管理效率而开发的,它包括了对学生宿舍基本信息管理,其功能包括对这些...
  • 编写一个学生宿舍管理软件。 能使宿舍有:101,102,201,202四个房间,每个房间可住学生人。采用链表存储结构:学号、姓名、房间号、后续指针,按房间号有序,实现学生的入住、退房和查询,按给定学号、姓名、房号查询
  • 这个是我们做的课程设计 传上来 又需要的可以下载去瞧瞧
  • 大一做的C语言课程设计,共有五张表,顺序表加链表,增删改查管理员读写文件都有,共有1189行,满足大一的同学期末课设答辩,感兴趣的可以看看
  • 学生宿舍管理系统c语言.doc
  • C语言设计学生宿舍管理系统

    万次阅读 多人点赞 2019-02-19 15:14:21
    如果你是为了应付老师则足矣,如果是为了优秀,那就要自己添加更多的关系表和功能块,比如可以再添加宿舍表,通过这个关系表,可以查看,这个宿舍有没有空床位;当给宿舍添加学生时,遇到宿舍爆满,就会添加失败等...
  • 宿舍管理查询系统 } 同名情况 if (flag) fseek(fp, locate, SEEK_SET; } if (flag == 0) printf"\n 没有符合条件的学生的记录 \n; fclose_fp; fclose(fp; } void check_out){ char stu_num[20]; char dorm_num[20]; ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,509
精华内容 1,003
关键字:

宿舍管理查询c语言

c语言 订阅