欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    学生信息管理系统(高级)(44页).doc

    • 资源ID:37071917       资源大小:302.50KB        全文页数:44页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    学生信息管理系统(高级)(44页).doc

    -学生信息管理系统(高级)-第 41 页目 录1 实习目的12 需求分析22.1 对教务管理系统要求提供一下几个方面的服务22.2 信息管理系统各个使用者应具备的功能22.3 系统性能的要求22.4 系统的功能分析22.5 系统的模块功能33 概要设计33.1 总体功能模块33.2 各函数的功能和实现43.2.1 主界面43.2.2 管理员界面53.2.3 教师界面123.2.4学生界面143.2.5 保存文件143.2.6 读取文件154 调试与测试164.1 主界面164.2 管理员界面164.2.1 新建用户组174.2.2 查看所有用户组184.2.3 查询指定用户信息(教师为例)194.2.4 添加用户信息(以教师为例)204.2.5 删除用户(以教师为例)214.2.6 修改用户信息(以教师为例)234.3 教师界面254.3.1 查看学生信息264.3.2 查询学生信息264.3.3 录入学生成绩274.4 学生界面284.4.1 查看成绩294.5 账号的登陆(管理员为例)304.6 修改当前用户的密码(以学生为例)315 使用说明326 总结337 参考文献348 附录344.4.1只有一个三级目录的话就不用写了目录我给改了德州学院教务管理系统的设计与实现上面那两个空行删去1 实习目的随着现代科学的发展,计算机的应用几乎进入了生活中的每一个领域。计算机技术在信息管理上也得到了越来越深入而广泛的应用,信息管理系统的实施在技术上已逐步成熟。教务管理系统是学校等教育单位不可缺少的部分,利用计算机对学生信息进行管理,具有传统手工管理无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生信息管理的效率,也是科学化、正规化的管理,与世界接轨的重要条件。本系统以Visual C+6.0作为开发工具,并运用其进行编程,实现学生信息的管理。本系统界面友好,操作方便,支持海量数据,维护方便,是功能比较完备的信息管理系统。通过上机实习,熟练掌握循环语句、选择语句、指针以及结构体的运用技巧。在实习中通过实际操作、编写程序、发现问题、最后解决问题,提升对C语言实用性的理解,在实践中巩固各知识点。C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画。具体应用比如单片机以及嵌入式系统开发。上机实习可以帮助我们更好地理解这种结构式的中级语言以及其各式各样的数据类型和高效率的运算程序,为我们进一步学习打下坚实的基础。同时,在实习过程中,通过相互发现问题,共同讨论、研究和解决问题,不仅锻炼了我们的合作能力,而且也让我们发现了一些自己的个人误区以及其他人容易犯的错误,从而在今后的学习中更加谨慎,达到事半功倍的效果;通过查找资料,使我们自主学习的能力得到提高;通过询问老师也让我们养成了不耻下问的好习惯,这将很有利于今后的学习。2 需求分析2.1 对教务管理系统要求提供一下几个方面的服务二级标题格式不对,2.1和2.2我给你改了,你把全文格式刷一下(1)教与学生信息管理(2)教师与学生账号管理(3)教师与学生账号的创建2.2 信息管理系统各个使用者应具备的功能(1)管理员管理员使用给定账号密码登陆本系统进行(教师与学生账户密码管理,教师与学生信息管理,教师与学生账号的创建)。设置段落先把前面空格删去,这才是首字缩进2字符。(2)学生 学生登陆本系统(查看个人信息,管理个人账户)(3)教师 教师登陆本系统(查看个人信息,查看学生信息,录入学生成绩,管理个人账号)(4)应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观。2.3 系统性能的要求(1)系统安全、可靠(2) 功能齐全(3) 操作简单、界面友好(4) 易于维护2.4 系统的功能分析(1) 资料维护:系统维护包括对数据表中的信息进行浏览及操作。(2)系统功能:可以对数据表中的信息进行全部浏览和单个浏览。 (3)系统查询:可以对教师与学生的信息全部进行查询和单个查询。2.5 系统的模块功能(1) 管理员模块:由数据表信息查看、添加、删除、修改构成;(2) 教师模块:由学生信息查看、成绩录入构成;(3) 学生模块:由学生信息查看构成;3 概要设计3.1 总体功能模块(1)系统概述开始主界面核对账号密码结束教师界面录入学生成绩修改本账号密码注销查询指定学生信息查看全体学生信息教师N<3查看成绩修改本账号密码注销学生界面N<3结束核对账号密码学生N<3核对账号密码结束管理员界面注销修改本账号密码修改用户信息删除用户添加用户新建用户组查询指定用户信息查看全体用户信息管理员图有点大,能调小点吗 N N N N Y N Y N Y Y Y Y图1总体功能模块框架图教务管理系统是对教师与学生的信息进行管理,处理教师与学生的个人信息的系统。管理员利用本系统进行(教师与学生账户密码管理,教师与学生信息管理)。学生利用本系统(查看个人信息,管理个人账户)。教师利用本系统(查看个人信息,管理个人账户,查看学生信息,管理学生成绩)。3.2 各函数的功能和实现3.2.1 主界面void main() int mychoose1,mychoose2,mychoose3; int flag=0; struct teacher *t; struct stu *s,*ss; while(1) t=load_teacher(); /程序与形式均使用同一地址,避免数据异常 s=load_stu(); /输出菜单 printf("*请选择您的用户类型 *n"); printf("n"); printf(" 1:管理员n"); printf(" 2:教师n"); printf(" 4:退出n"); printf("n"); printf("*n") printf("您的选择是:"); scanf("%d",&mychoose1); system("cls");/清屏 switch(mychoose1) case 1: 管理员相关代码; break; case 2: 教师相关代码; break; case 3: 学生相关代码; break; 3.2.2 管理员界面login_admin(); /登陆while(1)printf("*可进行操作*n");printf("n");printf(" 1:查看用户信息n"); printf(" 2:查询用户信息n"); printf(" 3:新建用户组n");printf(" 4:添加用户n");printf(" 5:删除用户n");printf(" 6:修改用户信息n ");printf(" 7:修改本账号密码n");printf(" 8:注销n");printf("n");printf("*n"); printf("您的选择是:"); scanf("%d",&mychoose2); system("cls"); switch(mychoose2) case 1: 查看函数 break;case 2: 查询函数 break;case 3: 新建函数 break;case 4: 添加函数 break;case 5: 删除函数 break;case 6: 修改函数 break;case 7: 修改密码函数 break;case 8:删除全文中所有的空行 注销函数 break;所有的西文字体大小为12,全文检查一遍 (1) 管理员登陆,错误超过3次自动退出程序void login_admin() int n=0;/记录登录次数 char account10,password10; struct admin *p; p=load_admin(); p=p->next; while(1) printf("请输入账号:"); scanf("%s",account); printf("请输入密码:"); scanf("%s",password); if(strcmp(account,p->account)|strcmp(password,p->password) system("cls"); printf("帐号或密码错误!请重新登录!n"); n+; else system("cls"); printf("登录成功!n"); break; if(n=3) printf("已3次输入错误!退出系统!n"); exit(0);(2) 查看所有用户信息(以教师为例)void print_teacher(struct teacher *head) /输出 int s=0; struct teacher *p; p=head->next; printf("*n"); printf("n"); printf("教师编号t密码t 姓名t 性别t系别t 职位t 学历 n"); while(p!=NULL)printf("%-15ld%-10s%-10s%-5s%-10s%-10s%-5sn",p->num,p->password,p->name,p->sex,p->depart,p->proftitle,p->degree); p=p->next; /指针后移 s+; printf("n these are %d nodesn",s); printf("*n");(3) 输入教师或学生ID,查找其相关信息(以学生为例这些属于正文了,宋体小四号,全文检查)void search_student(struct stu *head,long num) struct stu *p1,*p2; p1=head->next; p2=head; if(head->next=NULL)/链表为空 printf("链表为空!n"); else while(p1!=NULL&&num!=p1->num)/查找删除节点 p2=p1; p1=p1->next; if(!p1)/删除节点不存在 printf("无此记录!n"); else printf("*n"); printf("学生编号t密码t 姓名t 性别t系别t 专业t 分数n"); printf("%-15ld%-10s%-10s%-5s%-10s%-15s%-5fn",p1->num,p1->password,p1->name,p1->sex,p1->depart,p1->major,p1->score); printf("*n");(4) 新建用户组,以num为0结束(教师为例)struct teacher *creat_teacher()/创建链表 struct teacher *head; struct teacher *p1,*p2; head=(struct teacher*)malloc(LEN2); head->next=NULL; p1=head; p2=(struct teacher*)malloc(LEN2); strcpy(p2->password,"123456");/设置默认密码123456 printf("教师编号:"); scanf("%ld",&p2->num); printf("姓名:"); scanf("%s",&p2->name); printf("性别:"); scanf("%s",&p2->sex); printf("系别:"); scanf("%s",&p2->depart); printf("职位:"); scanf("%s",&p2->proftitle); printf("学历:"); scanf("%s",&p2->degree); while(p2->num!=0) p2->next=p1->next; p1->next=p2; p1=p2; p2=(struct teacher*)malloc(LEN2); strcpy(p2->password,"123456"); printf("教师编号:"); scanf("%ld",&p2->num); if(p2->num=0) break; printf("姓名:"); scanf("%s",&p2->name); printf("性别:"); scanf("%s",&p2->sex); printf("系别:"); scanf("%s",&p2->depart); printf("职位:"); scanf("%s",&p2->proftitle); printf("学历:"); scanf("%s",&p2->degree); free(p2); return(head);(5) 添加用户,num为0结束(以学生为例)void insert_student(struct stu *head)/插入新节点 struct stu *p0,*p1,*p2; p1=head->next; p2=head; while(1) p0=(struct stu*)malloc(LEN1); p0->next=NULL; strcpy(p0->password,"123456");/设置默认密码123456 printf("学生编号:"); scanf("%ld",&p0->num); if(p0->num=0) break; printf("姓名:"); scanf("%s",&p0->name); printf("性别:"); scanf("%s",&p0->sex); printf("系别:"); scanf("%s",&p0->depart); printf("专业:"); scanf("%s",&p0->major); p2->score=0.0; while(p1!=NULL)&&(p0->num>p1->num) p2=p1; p1=p1->next;/指针后移 p0->next=p2->next; p2->next=p0;(6) 删除用户,先以ID进行查询,再删除(以教师为例)int delete_teacher(struct teacher *head,long num)/删除 struct teacher *p1,*p2; p1=head->next; p2=head; if(head->next=NULL)/链表为空 return -1; else while(p1!=NULL&&num!=p1->num)/查找删除节点 p2=p1; p1=p1->next; if(!p1)/删除节点不存在 return 0; else printf("*n"); printf("教师编号t密码t 姓名t 性别t系别t 职位t 学历n"); printf("%-15ld%-10s%-10s%-5s%-10s%-10s%-5sn",p1->num,p1->password,p1->name,p1->sex,p1->depart,p1->proftitle,p1->degree); printf("*n"); printf("确认删除此用户?1:是 2:否n"); int choose; scanf("%d",&choose); switch(choose) case 1: p2->next=p1->next;/将删除节点从链表中摘除 free(p1);/释放删除节点 return 1; break; case 2: break;(7) 查找用户,以ID查找,可进行一个及多个查找,以num为0结束(以学生为例) void search_teacher(struct teacher *head,long num) struct teacher *p1,*p2; p1=head->next; p2=head; if(head->next=NULL)/链表为空 printf("链表为空!n"); else while(p1!=NULL&&num!=p1->num)/查找删除节点 p2=p1; p1=p1->next; if(!p1)/删除节点不存在 printf("无此记录!n"); printf("*n"); printf("教师编号t密码t 姓名t 性别t系别t 职位t 学历n"); printf("%-15ld%-10s%-10s%-5s%-10s%-10s%-5sn",p1->num,p1->password,p1->name,p1->sex,p1->depart,p1->proftitle,p1->degree); printf("*n");(8) 修改用户信息,以ID查找,再加以修改(以学生为例)void Modify_student(struct stu *head,long num) struct stu *p; p=head->next; while(p!=NULL&&num!=p->num) p=p->next; if(!p) printf("无此ID!"); else printf("*n"); printf("学生编号t密码t 姓名t 性别t系别t 专业t 分数n"); printf("%-15ld%-10s%-10s%-5s%-10s%-15s%-5fn", p->num,p->password,p->name,p->sex,p->depart,p->major,p->score); printf("*n"); printf("确认修改此用户?1:是 2:否n"); int choose; scanf("%d",&choose); switch(choose) case 1: printf("学生编号:"); scanf("%ld",&p->num);printf("密码:");scanf("%s",&p->password);printf("姓名:");scanf("%s",&p->name);printf("性别:");scanf("%s",&p->sex);printf("系别:");scanf("%s",&p->depart);printf("专业:");scanf("%s",&p->major);break;case 2:break;3.2.3 教师界面login_teacher(t); while(1) printf("n"); printf("*可进行操作*n"); printf(" 1:查看学生信息n"); printf(" 2:查询学生信息n"); printf(" 3:录入学生成绩 n"); printf(" 4:修改密码n"); printf(" 5:注销n"); printf("n"); printf("*n"); printf("您的选择是:"); scanf("%d",&mychoose2); system("cls"); switch(mychoose2) case 1: 查看所有学生信息函数 break; case 2: 查看指定学生信息函数 break; case 3: 学生给分函数 break; case 4: 修改密码函数 break; case 5: 注销函数 break;(1) 给学生打分,先以ID查找学生信息,确认后输入成绩void getscore(struct stu *head,long num) struct stu *p; p=head->next; while(p!=NULL&&num!=p->num) p=p->next; if(!p) printf("无此ID!"); else printf("*n"); printf("学生编号t 姓名t 性别t系别t 专业t 分数n"); printf("%-15ld%-5s%-10s%-15s%-5fn",p->num,p->name,p->sex,p->depart,p->major,p->score); printf("*n"); printf("确认该学生?1:是 2:否n"); int choose; scanf("%d",&choose); switch(choose) case 1: printf("得分:"); scanf("%f",&p->score); break; case 2: break;3.2.4学生界面 ss=login_student(s); while(1) printf("*可进行操作*n"); printf("n"); printf(" 1:查看成绩n"); printf(" 2:修改密码n"); printf(" 3:注销n"); printf("n"); printf("*n"); printf("您的选择是:"); scanf("%d",&mychoose2); system("cls"); switch(mychoose2) case 1: 查看函数 break; case 2: 修改密码函数 break; case 3: 注销函数 break; 3.2.5 保存文件void save_student(struct stu *head) FILE *fp; struct stu *p; if(fp=fopen("Data_student.dat","wb")=NULL) printf("打不开文件n"); exit(0); p=head->next; while(p!=NULL) fwrite(p,LEN1,1,fp); p=p->next; fclose(fp);3.2.6 读取文件struct stu *load_stu() FILE *fp; struct stu *head; struct stu *p1,*p2; head=(struct stu*)malloc(LEN1); head->next=NULL; p1=head; if(fp=fopen("Data_student.dat","rb")=NULL)/无文件则创建文件 save_student(head); else p2=(struct stu*)malloc(LEN1); fread(p2,sizeof(struct stu),1,fp); while(!feof(fp) p2->next=p1->next; p1->next=p2; p1=p2; p2=(struct stu*)malloc(LEN1); fread(p2,sizeof(struct stu),1,fp); fre

    注意事项

    本文(学生信息管理系统(高级)(44页).doc)为本站会员(1595****071)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开