您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > (附件1)C语言程序设计课程设计报告
课程设计课程名称C语言程序设计课程设计题目名称宿舍学生信息管理系统专业班级2014级智慧城市班学生姓名成云金慧芬陈先平杨锦齐雨婷学号指导教师马程二○一五年6月20日蚌埠学院计算机科学与技术系课程设计任务书课程C语言程序设计班级2014级智慧城市班指导教师马程题目学生宿舍信息管理系统完成时间2015年6月1日至2015年6月20日主要内容要求:1.能实现基本数据的输入、输出、查询、统计等操作;2.用文件的方式等操作。3.需求由设计者自己分析。设计报告要求1.封面:(格式附后)2.课程设计任务书3.课程设计报告:⑴系统总体方案⑵设计思路和主要步骤⑶各功能模块和流程图⑷设计代码⑸心得体会和参考资料说明:学生完成课程设计后,提交课程设计报告及软件,要求文字通畅、字迹工整(也可用以打印),文字不少于5000字,并装订成册。上机时间安排星期周次一二三四五六日第2周-第5周2014级智慧城市班,3-4节2014级智慧城市班,1-2节指导时间地点上机时间,多媒体技术实验室(A503)版面要求1.题目用黑体三号,段后距18磅(或1行),居中对齐;2.标题用黑体四号,段前、段后距6磅(或0.3行);3.正文用小四号宋体,行距为1.25倍行距;4.标题按“一”、“㈠”、“1”、“⑴”顺序编号。分工协作说明课题名称学生姓名学号所做的工作金慧芬51402121033成云51402121012陈先平51402121035齐雨婷51402121008杨锦51402121024学生宿舍管理系统学生宿舍信息管理系统一、系统总体方案:(一)总体功能设计学生宿舍管理系统存放了每个学生的学号、姓名、性别、年龄、寝室号、电话号码每个人的信息定义在一个结构体变量中。其结构如下:系统通过录入程序、浏览程序、查询程序、删除程序、添加程序、修改程序及退出实现学生信息管理系统的录入、浏览、、查询、、删除、、添加、修改各个功能的调用通过主函数中的switch语句来实现。switch(n){case1:printf(1.录入学生信息\n);printf(\n);input();break;case2:printf(2.浏览学生信息\n);printf(\n);display();break;case3:printf(3.按学号查询\n);printf(\n);search();break;case4:printf(4.删除学生信息\n);printf(\n);del();break;case5:printf(5.添加学生信息\n);printf(\n);add();break;case6:printf(6.修改学生信息\n);printf(\n);modify();break;case7:exit(0);break;default:break;}(二)各模块功能设计:(1)录入模块通过设计一个模块,来实现学生信息的录入。(2)浏览模块通过设计一个模块,实现学生信息的显示,以便以便用户更好的浏览学生信息。(3)查询模块通过设计一个模块,这个模块可以按学生的学号、姓名来查询学生所有的信息,并显示学生的所有信息,以便用户阅读。(4)删除模块通过设计一个模块,通过程序实现找到学生信息,在通过程序将学生的信息文件中删除。(5)添加模块通过设计一个模块,当要添加新的学生的信息的时候,来实现新学生的信息录入。(6)修改模块通过设计一个模块,当某个学生的信息要发生改变时,通过程序找到要修改的的学生信息,根据需要修改的内容去修改学生信息,在通过浏览模块来显示修改后的学生信息。(三)设计思路和主要步骤:(1).设计思路:学生宿舍管理系统是对学生住宿信息的录入、浏览、查询、删除、添加、修改等,方便宿管员对学生的管理;首先设计进入系统的界面,以方便用户与计算机之间的交互,然后通过编语句实现系统各个模块的功能,实现系统的功能。(2).主要步骤:(一)了解学生宿舍信息的内容(二)通过课本例题了解主要步骤(三)查阅课本所需要的编程语句(四)通过用c++编语句,用c++语句的格式及要求完成系统的设计及实现(五)最后调试程序,查看运行结果,写报告。二、系统总体模块设计图三、系统总流程图及各模块流程图主函数录入模块浏览模块查询模块删除模块添加模块修改模块退出退出(一)总流程图:开始进入系统输入数字nn=?n=1录入模块n=2浏览模块n=3查询模块n=4删除模块n=5添加模块n=6修改模块n=7退出显示结果输出退出结束(二)各模块流程图(1)录入信息流程图:输入姓名输入性别输入年龄输入寝室号输入电话是否继续录入结束是否(2)浏览信息流程图:(3)查询信息流程图:进入输入选项按学号查找按电话号码查找查找学生Flag=?输出学生信息查无此人!!!是否继续查询退出Num=2Num=3flag=1flag=0是否(4)删除信息流程图:查无此人Flag=0开始输入要查找的信息查找删除信息Flag=?删除学生信息输出要删除信息是否继续删除结束否是(5)添加信息流程图:(6)修改信息流程图:(7)退出流程图四、程序代码#includestdio.h#includewindows.h#includetime.h#includestring.h#defineN100structstudent{intnum;/*学号*/charname[10];/*姓名*/charsex;/*性别*/intage;/*年龄*/intqsh;/*寝室号*/chartel[12];/*电话号码*/}stu[100];/*定义一个结构体*/voidmenu();/*菜单函数*/voidinput();/*录入函数*/voidsave(int);/*保存函数*/voiddisplay();/*浏览函数*/voiddel();/*删除函数*/voidadd();/*增加函数*/voidsearch();/*查询函数*/voidsearch_num();voidsearch_xueli();voidsearch_tel();voidmodify();/*修改函数*/voidmenu()/*菜单函数*/{printf(\n);printf(****************宿舍学生信息管理系统**************\n\n\n);printf(1.录入学生信息2.浏览学生信息\n\n\n);printf(3.查询学生信息4.删除学生信息\n\n\n);printf(5.添加学生信息6.修改学生信息\n\n\n);printf(7.退出\n\n);printf(********************欢迎下次进入!******************\n\n\n);printf(\n);printf(\n);}voidmain(){intn,flag;chara;menu();/*调用菜单函数*/do{printf(请选择你需要操作的步骤(1--7):\n);scanf(%d,&n);if(n=1&&n=7){flag=1;break;}else{flag=0;printf(您输入有误,请重新选择!);}}while(flag==0);while(flag==1){switch(n){case1:printf(1.输入学生信息\n);printf(\n);input();break;case2:printf(2.浏览学生信息\n);printf(\n);display();break;case3:printf(3.按学号查询学生信息\n);printf(\n);search();break;case4:printf(4.删除学生信息\n);printf(\n);del();break;case5:printf(5.添加学生信息\n);printf(\n);add();break;case6:printf(6.修改学生信息\n);printf(\n);modify();break;case7:exit(0);break;default:break;}getchar();printf(\n);printf(是否继续进行(yorn):\n);scanf(%c,&a);if(a=='y'){flag=1;system(cls);/*清屏*/menu();/*调用菜单函数*/printf(请再次选择你需要操作的步骤(1--6):\n);scanf(%d,&n);printf(\n);}elseexit(0);}}voidinput()/*录入函数*/{inti,n,m,p,j;printf(请输入需要创建信息的学生人数(1--100):\n);scanf(%d,&m);for(i=0;im;i++){printf(学号(号码范围:51402000--51402100):);scanf(%d,&stu[i].num);for(n=1;n==1;){for(p=0;pi;p++){if(stu[i].num==stu[p].num)j=1;}if(j==1){j=0;printf(\n您输入的学号重复,请重新输入\n);printf(学号:);scanf(%d,&stu[i].num);}elsen=0;}printf(\n);printf(请输入姓名:);scanf(%s,stu[i].name);getchar();printf(请输入性别(女男):);scanf(%c,&stu[i].sex);printf(请输入年龄:);scanf(%d,&stu[i].age);printf(请输入寝室号:);scanf(%d,&stu[i].qsh);printf(请输入电话:);scanf(%s,stu[i].tel);printf(\n);}printf(\n);printf(\n创建完毕!\n);save(m);}voidsave(intm)/*保存文件函数*/{inti;FILE*fp;if((fp=fopen(student_list,wb))==NULL)/*创建文件并判断是否能打开*/{printf(cannotopenfile\n);exit(0);}for(i=0;im;i++)/*将内存中学生的信息输出到磁盘文件中去*/if(fwrite(&stu[i],sizeof(structstudent),1,fp)!=1)printf(filewriteerror\n);fclose(fp);}intload()/*导入函数*/{FILE*fp;inti=0;if((fp=fopen(student_list,rb))==NULL){printf(cannotopenfile\n);exit(0);}else{do{fread(&stu[i],sizeof(structstudent),1,fp);i++;}while(feof(fp)==0);}fclose(fp);return(i-1);}voiddisplay()/*浏览函数*/{inti;intm=load();printf(\n学号\t姓名\t性别\t年龄\t宿舍号\t电话\n);for(i=0;im;i++)/*m为输入部分的学生人数*/printf(\n%d\t%s\t%c\t%d\t%d\t%s\n,stu[i].num,stu[i].name,stu[i].sex,stu[i].age,stu[i].qsh,stu[i].tel);}voiddel()/*删除函数*/{intm=load();inti,j,n,t,flag;charname[20];printf(\n原来的学生信息:\n);display();/*调用浏览函数*/printf(\n);printf(请输入要删除的学生的姓名:\n);scanf(%s,name);for(flag=1,i=0;flag&&im;i++){if(strcmp(stu[i].name,name)==0)printf(\n已找到此人,原始记录为:\n);printf(\n学号\t姓名\t性别\t年龄\t寝室号\t
本文标题:(附件1)C语言程序设计课程设计报告
链接地址:https://www.777doc.com/doc-3506491 .html