版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程设计说明书 NO.1信息学院学生信息管理系统设计1课程设计的目的C语言程序设计课程设计是计算机科学与技术专业一门重要的专业技术基础课程,也是一门核心课程。信息学院学生信息管理系统设计的目的是为了配合C语言程序设计课程的开设,使学生能够较熟练地掌握语言的基本内容及程序设计的基本方法与编程技巧,并能够培养学生应用计算机解决和处理实际问题的思维方法与基本能力,为进一步学习和应用计算机的专业知识打下基础。2.课程设计方案论证及程序清单 2.1 课程设计方案论证这次设计的系统能够对同学的信息进行输入、显示、查找、删除、插入、保存、读入、按序号查找、拷贝、排序、快速查找、退出等功能。在第一时间何以方便
2、的寻找查找、删除、插入、保存、读入他们的信息在原有的基础上可以让提高查找的速度.达到方便、快捷、准确的目的。应用我门所学的指针数组、结构提等.并且是用结构体来构件我们的基本框架。2.2 总体功能框图学生管理系统: 1、录入学生信息 2、修改学生信息 3、查询学生信息 4、浏览学生信息 5、增加学生信息 6、推出信息系统 沈 阳 大 学课程设计说明书 NO.2图(1)操作流程图退出系统保存当前学生信息显示当前信息按学号删除信息增加学生信息修改学生信息查询学生信息刷新学生信息系统帮助及说明876543210操作面2.3操作流程图:开始 沈 阳 大 学课程设计说明书 NO.32.4 源程序清单#in
3、clude /*I/O函数*/#include /*其它说明*/#include /*字符串函数*/#define BUFLEN 100 /* 缓冲区最大字符数*/#define LEN 15 /* 学号和姓名最大字符数,实际请更改*/#define N 100 /* 最大学生人数,实际请更改*/struct record /*结构体*/char codeLEN+1; /* 学号*/char nameLEN+1; /* 姓名*/int age; /* 年龄*/char sex3; /* 性别*/char timeLEN+1; /* 出生年月*/char add30; /* 家庭地址*/char
4、 telLEN+1; /* 电话号码*/char mail30; /* 电子邮件地址*/stuN;int k=1,n,m; /* 定义全局变量*/ void readfile();/* 函数声明*/void 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.进入系统后,先刷新学生信息,再查
5、询;n);printf(n2.按照菜单提示键入数字代号;n); 沈 阳 大 学课程设计说明书 NO.4printf(n3.增加学生信息后,切记保存按;n);printf(n4.谢谢您的使用!n); void readfile()/* 建立信息*/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 %
6、s %s %s,stui.code,,&stui.age,stui.sex,stui.time,stui.add,stui.tel,stui.mail)=8)i+;i=i;fclose(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
7、(%d,&item);flag=0;switch(item) 沈 阳 大 学课程设计说明书 NO.5case 1:printf(请输入要查询的学生的学号:n);scanf(%s,s1);for(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.te
8、l,stui.mail);if(flag=0)printf(该学号不存在!n); break;case 2:printf(请输入要查询的学生的姓名:n);scanf(%s,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,s
9、tui.mail);if(flag=0)printf(该姓名不存在!n); break;case 3:return;default:printf(请在-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) /*比较字符串是否相等*/ 沈 阳 大 学课程设计说明书 NO.6num=i;printf(-n);pri
10、ntf(1.修改姓名n);printf(2.修改年龄n);printf(3.修改性别n);printf(4.修改出生年月n);printf(5.修改地址n);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(
11、%d,&stunum.age);break;case 3:printf(请输入新的性别:n);scanf(%s,sex1);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;c
12、ase 7: 沈 阳 大 学课程设计说明书 NO.7printf(请输入新的E-mail地址:n);scanf(%s,s2);strcpy(stunum.mail,s2); break;case 8:return;default:printf(请在-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.co
13、de,temp);strcpy(temp,);strcpy(,);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(st
14、uj.add,temp);strcpy(temp,stuj-1.tel);strcpy(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; 沈 阳 大 学课程设计说明书 NO.8*q=*p; *p=s; void insert() /*插入函数*/ int i=n,j,flag;printf(请输入待增加的学生数:n);scanf(%d,&
15、m);do flag=1;while(flag)flag=0;printf(请输入第%d 个学生的学号: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 个学
16、生的性别:n,i+1);scanf(%s,stui.sex);printf(请输入第%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) 沈 阳 大 学课程设计说明书 NO.9 i=i;i+;while(in+m);n+=m;printf(录入完
17、毕!nn);sort(); void del()int i,j,flag=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(删除成功,显示结果请选择菜单n);n-; void display() int i;printf(所有学生的信息为:n);printf(学生学号 学生姓名 年龄 性别 出生年月 地址 电话
18、 E-mailn);printf(-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); 沈 阳 大 学课程设计说明书 NO.10 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.n
19、ame,stui.age,stui.sex,stui.time,stui.add,stui.tel,stui.mail);fclose(fp); void menu()/* 界面*/int num;printf( nn 信息学院学生信息管理系统 nn);printf( * nn);printf( * 制作人:李洋* n n);printf( * nn); printf(*系统功能菜单* n);printf(友情提醒:查询前请先刷新系统! n);printf( - - n);printf( * n);printf( * 0.系统帮助及说明 * * 1.刷新学生信息 * n);printf( *
20、n); printf( * 2.查询学生信息 * * 3.修改学生信息 * n);printf( * n);printf( * 4.增加学生信息 * * 5.按学号删除信息 * n);printf( * n);printf( * 6.显示当前信息 * * 7.保存当前学生信息* n);printf( * * n);printf( * 8.退出系统 * n);printf( * n);printf( - - n);printf(请选择菜单编号:);scanf(%d,&num);switch(num) case 0:help();break; 沈 阳 大 学课程设计说明书 NO.11case 1:
21、readfile();break;case 2:seek();break;case 3:modify();break;case 4:insert();break;case 5:del();break;case 6:display();break;case 7:save();break;case 8:k=0;break;default:printf(请在-8之间选择n);3.课程设计运行与分析输入0: 沈 阳 大 学课程设计说明书 NO.12输入1:输入2,1按学号查询,2按姓名查询,3退出本程序: 沈 阳 大 学课程设计说明书 NO.13输入3:输入4: 沈 阳 大 学课程设计说明书 NO.14输入5,按学号删除信息:输入6: 沈 阳 大 学课程设计说明书 NO.15输入7,保存当前学生信息:输入8,退出系统: 沈 阳 大 学课程设计说明书 NO.164课程设计结论通过这个程序显示了C语
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026宁夏银川永宁县卫生健康系统专业技术人员自主招聘59人备考题库【考点提分】附答案详解
- 2026年省委党校在职研究生政治理论考试全真模拟试卷及答案(共三套)
- 企业生产车间管理标准工具模板
- 品质诚信义务承诺书4篇范文
- 安全防护与应急预案方案
- 工程进度保证目标承诺书5篇
- 网络资源快速调配承诺书(3篇)
- 交通出行服务标准承诺书4篇范文
- 应用举例(方位角)第二课时教学设计(二〇二五-二〇二六学年人教版数学九年级下册)
- 的业务过程自动化执行与管理模板
- 儿童过敏免疫诊疗中心过敏免疫门诊规范化建设专家共识课件
- 2025年医院党支部书记党建工作述职报告
- 大疆创新软件测试工程师晋升答辩含答案
- GB/T 46595-2025排水泵站一体化设备
- 内衣定制代加工合同
- 自救器课件培训课件
- 房建项目施工知识培训课件
- 黑马程序员合同模板(3篇)
- 2024年公共营养师之三级营养师真题及答案
- 医药ka专员培训课件
- 智能工厂总体架构及数字化应用解决方案
评论
0/150
提交评论