版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、设 计 任 务 书专 业计算机科学与技术班 级姓 名设 计 起 止 日 期设计题目:学籍管理系统设计任务(主要技术参数):软件编程训练要求结合C语言程序设计课程所学的基础知识进行程序设计,并实现下列目标:1. 通过课堂讲解和学习研究,查阅和收集C语言程序设计的相关资料;2. 进行方案的选择、分析与设计;3. 对程序进行上机调试;4. 写出设计体会;5. 撰写软件编程训练报告。报告力求做到观点正确、方法科学、技术先进。硬件环境:CPU:1.3GHz 内存:4GB 硬盘:750GB软件环境:操作系统:WIN8 程序开发环境:visual c+ 6.0指导教师评语:成绩:签字:年月日学生宿舍管理系统
2、设计功能:实现简单的学生宿舍基本信息管理,宿舍的基本信息包括楼号、房间号、面积、所容纳人数、已入住人数等基本要求:1 设计简单的菜单,能够进行系统功能选择。2 实现信息的录入功能。3 在已有信息的基础上添加新的记录。4 删除指定房间号的记录。5 修改指定房间号的记录6 实现信息的浏览功能7 按房间号查询功能8 按已入住人数排序功能#include /*I/O函数*/ #include /*其它说明*/ #include /*字符串函数*/ #define BUFLEN 100 /* 缓冲区最大字符数 */ #define LEN 15 /* 学号和姓名最大字符数,实际请更改 */ #defin
3、e N 100 /* 最大学生人数,实际请更改*/ struct record /*结构体*/ char codeLEN+1; /* 学号 */ char nameLEN+1; /* 姓名 */ int age; /* 年龄 */ char sex3; /* 性别 */ char timeLEN+1; /* 出生年月 */ char add30; /* 家庭地址 */ char telLEN+1; /* 电话号码 */ char mail30; /* 电子邮件地址 */ stuN; int k=1,n,m; /* 定义全局变量 */ void readfile();/* 函数声明 */ voi
4、d seek(); void modify(); void insert(); void del(); void display(); void save(); void menu(); int main() while(k) menu(); system(pause); return 0; void help() printf(n0.欢迎使用系统帮助!n); printf(n1.进入系统后,先刷新学生信息,再查询;n); printf(n2.按照菜单提示键入数字代号;n); printf(n3.增加学生信息后,切记保存按7;n); printf(n4.谢谢您的使用!n); void read
5、file()/* 建立信息 */ char *p=student.txt; FILE *fp; int i=0; if (fp=fopen(student.txt,r)=NULL) printf(Open file %s error! Strike any key to exit!,p); system(pause); exit(0); while(fscanf(fp,%s %s%d%s %s %s %s %s,stui.code,,&stui.age, stui.sex,stui.time,stui.add,stui.tel,stui.mail)=8) i+; i=i; f
6、close(fp); n=i; printf(录入完毕!n); void seek() /*查找*/ int i,item,flag; char s121; /* 以姓名和学号最长长度+1为准 */ printf(-n); printf(-1.按学号查询-n); printf(-2.按姓名查询-n); printf(-3.退出本菜单-n); printf(-n); while(1) printf(请选择子菜单编号:); scanf(%d,&item); flag=0; switch(item) case 1: printf(请输入要查询的学生的学号:n); scanf(%s,s1); for(
7、i=0;in;i+) if(strcmp(stui.code,s1)=0) flag=1; printf(学生学号 学生姓名 年龄 性别 出生年月 地址 电话 E-mailn); printf(-n); printf(%6s %7s %6d %5s %9s %8s %10s %14sn,stui.code,,stui.age, stui.sex,stui.time,stui.add,stui.tel,stui.mail); if(flag=0) printf(该学号不存在!n); break; case 2: printf(请输入要查询的学生的姓名:n); scanf(%s,
8、s1); for(i=0;in;i+) if(strcmp(,s1)=0) flag=1; printf(学生学号 学生姓名 年龄 性别 出生年月 地址 电话 E-mailn); printf(-n); printf(%6s %7s %6d %5s %9s %8s %10s %14sn,stui.code,,stui.age, stui.sex,stui.time,stui.add,stui.tel,stui.mail); if(flag=0) printf(该姓名不存在!n); break; case 3:return; default:printf(请在
9、1-3之间选择n); void modify() /*修改信息*/ int i,item,num; char sex13,s1LEN+1,s2LEN+1; /* 以姓名和学号最长长度+1为准 */ printf(请输入要要修改的学生的学号:n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(stui.code,s1)=0) /*比较字符串是否相等*/ num=i; printf(-n); printf(1.修改姓名n); printf(2.修改年龄n); printf(3.修改性别n); printf(4.修改出生年月n); printf(5.修改地址n);
10、printf(6.修改电话号码n); printf(7.修改E-mail地址n); printf(8.退出本菜单n); printf(-n); while(1) printf(请选择子菜单编号:); scanf(%d,&item); switch(item) case 1: printf(请输入新的姓名:n); scanf(%s,s2); strcpy(,s2); break; case 2: printf(请输入新的年龄:n); scanf(%d,&stunum.age);break; case 3: printf(请输入新的性别:n); scanf(%s,sex1);
11、 strcpy(stunum.sex,sex1); break; case 4: printf(请输入新的出生年月:n); scanf(%s,s2); strcpy(stunum.time,s2); break; case 5: printf(请输入新的地址:n); scanf(%s,s2); strcpy(stunum.add,s2); break; case 6: printf(请输入新的电话号码:n); scanf(%s,s2); strcpy(stunum.tel,s2); break; case 7: printf(请输入新的E-mail地址:n); scanf(%s,s2); st
12、rcpy(stunum.mail,s2); break; case 8:return; default:printf(请在1-8之间选择n); void sort()/*按学号排序*/ int i,j,*p,*q,s; char temp10; for(i=0;ii;j-) if(strcmp(stuj-1.code,stuj.code)0) strcpy(temp,stuj-1.code); strcpy(stuj-1.code,stuj.code); strcpy(stuj.code,temp); strcpy(temp,); strcpy(,s
13、); strcpy(,temp); strcpy(temp,stuj-1.sex); strcpy(stuj-1.sex,stuj.sex); strcpy(stuj.sex,temp); strcpy(temp,stuj-1.time); strcpy(stuj-1.time,stuj.time); strcpy(stuj.time,temp); strcpy(temp,stuj-1.add); strcpy(stuj-1.add,stuj.add); strcpy(stuj.add,temp); strcpy(temp,stuj-1.tel); strcp
14、y(stuj-1.tel,stuj.tel); strcpy(stuj.tel,temp); strcpy(temp,stuj-1.mail); strcpy(stuj-1.mail,stuj.mail); strcpy(stuj.mail,temp); p=&stuj-1.age; q=&stuj.age; s=*q; *q=*p; *p=s; void insert() /*插入函数*/ int i=n,j,flag; printf(请输入待增加的学生数:n); scanf(%d,&m); do flag=1; while(flag) flag=0; printf(请输入第 %d 个学生的
15、学号:n,i+1); scanf(%s,stui.code); for(j=0;ji;j+) if(strcmp(stui.code,stuj.code)=0) printf(已有该学号,请检查后重新录入!n); flag=1; break; /*如有重复立即退出该层循环,提高判断速度*/ printf(请输入第 %d 个学生的姓名:n,i+1); scanf(%s,); printf(请输入第 %d 个学生的年龄:n,i+1); scanf(%d,&stui.age); printf(请输入第 %d 个学生的性别:n,i+1); scanf(%s,stui.sex); pr
16、intf(请输入第 %d 个学生的出生年月:(格式:年.月)n,i+1); scanf(%s,stui.time); printf(请输入第 %d 个学生的地址:n,i+1); scanf(%s,stui.add); printf(请输入第 %d 个学生的电话:n,i+1); scanf(%s,stui.tel); printf(请输入第 %d 个学生的E-mail:n,i+1); scanf(%s,stui.mail); if(flag=0) i=i; i+; while(in+m); n+=m; printf(录入完毕!nn); sort(); void del() int i,j,fla
17、g=0; char s1LEN+1; printf(请输入要删除学生的学号:n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(stui.code,s1)=0) flag=1; for(j=i;jn-1;j+) stuj=stuj+1; if(flag=0) printf(该学号不存在!n); if(flag=1) printf(删除成功,显示结果请选择菜单6n); n-; void display() int i; printf(所有学生的信息为:n); printf(学生学号 学生姓名 年龄 性别 出生年月 地址 电话 E-mailn); printf(-
18、n); for(i=0;in;i+) printf(%6s %7s %5d %5s %9s %8s %10s %14sn,stui.code,,stui.age, stui.sex,stui.time,stui.add,stui.tel,stui.mail); void save() int i; FILE *fp; fp=fopen(student.txt,w); /*写入*/ for(i=0;in;i+) fprintf(fp,%s %s %d %s %s %s %s %sn,stui.code,,stui.age, stui.sex,stui.time,stui.add,stui.tel,stui.mail); fclose(fp); void menu()/* 界面 */ int num; print
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026北京首华物业管理有限公司招聘2人备考题库附答案详解(精练)
- 2026广东佛山高明技师学院、佛山市高明区职业技术学校招聘事业编制教师8人备考题库含答案详解(夺分金卷)
- 2026福建漳州市龙文区教育局招聘43人备考题库附答案详解【研优卷】
- 2026安徽芜湖市第一人民医院第一次招聘劳务派遣人员16人备考题库及参考答案详解(新)
- 2026云南昆明聂耳交响乐团编外人员招聘2人备考题库附参考答案详解(巩固)
- 2025 网络基础的 FTP 协议的文件传输功能课件
- 2025 网络基础之区块链与数字版权网络的保护机制课件
- 护理质量管理体系与差错控制
- 合作利益冲突避免承诺书5篇范文
- 数据存储企业运营方案手册
- 2025海洋生态修复行业市场深度调研及发展趋势和前景预测研究报告
- 下肢静脉曲张的健康宣教
- 2025年上半年计算机软考信息系统项目管理师高级真题及答案
- 国家项目执行情况汇报
- 社区矫正招聘面试高分指南
- 铁路行车安全管理实务课件 模块四 处理铁路交通事故
- 《工业数字孪生 应用成熟度模型与评估方法》
- 《公民绿色低碳行为温室气体减排量化指南住:居民节约用电(征求意见稿)》编制说明
- 2025年9月27日云南大理州州级机关遴选笔试真题及答案解析
- 博迪《金融学》课件
- 规范性文件备案审查课件
评论
0/150
提交评论