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

    c程序课程设计说明书-教师信息管理系统大学论文.doc

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

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

    c程序课程设计说明书-教师信息管理系统大学论文.doc

    C程序设计课程设计任务书及说明书设计题目 教师信息管理系统 学 院 计算机与通信 专业、年级 物联网工程 学 生 王明明 学 号 _ 14530008_ 指导教师 时 间 2015 年 春季 学期目 录1 摘要32 前言43 正文53.1系统分析(需求分析)3.2系统总体设计3.3详细设计3.4系统测试及使用(操作)说明4 总结 185 参考文献 18致谢附录: 程序源代码1 摘要本次课程设计采用语言,开发了一个基本的教师信息管理系统,该系统具备了按教师姓名查找并输出教师信息,按教师号查找并输出教师信息,按教师姓名查找并删除数据,输出全部教师信息数据,对教师的管理也可以更加方便快捷。关键词:语言;课程设计;教师信息管理系统2 前言随着教育的广泛性的提高,教师的数量逐渐增多,但是在教师管理是出现教师姓名、年龄等出现错误的诸多问题。本文针对上述问题,采用软件工程的开发原理,根据软件流程过程规范,按照需求分析、概要设计、详细设计、程序编码、测试、软件应用、软件维护等过程开发了一个教师信息管理系统。采用c语言作为开发工具,设计了这个教师信息管理系统,解决了教师信息管理中存在的数据安全性、数据一致性等问题。3、正文3.1 系统分析3.3.1.设计要求该设计要求教师以学校教师信息管理业务为背景,设计、开发一套“教师信息管理系统”软件。通过该题目的设计过程,可以培养教师结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解,针对c语言中的重点和难点内容进行训练,独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格。得到软件工程的综合训练,提高解决实际问题的能力。3.3.2设计任务1、以教师信息管理业务为背景,通过调研、分析现有的管理模式和已有的管理软件,建立系统模型;2、完成软件结构设计和算法设计;3、完成系统的软件开发和测试工作;教师信息包括:教师号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。设计“教师信息管理系统”,使之能提供以下功能:1. 系统以菜单方式工作;2. 教师信息录入功能;3. 教师信息浏览功能;4. 查询、排序功能:按编号查询、按姓名查询;5. 教师信息的删除与修改;6. 存储教师信息。3.2 系统总体设计一功能模块图main欢迎界面选项退 出 并 存 盘教师信息查询教师信息删除教师信息排序教师信息录入教师信息修改二总体数据结构本系统采用结构体为主要数据结构,将教师信息,包括:教师号,姓名,年龄,性别,出生年月,地址,电话,E-mail以结构体的形式存储在计算机中。struct TEACHER int ID; char Name10; int Age; char Sex2; int Birthday; char Adress15; char TelNum12; char Email10;3.3详细设计 (1) 功能模块及函数说明函数原型:void DispMainMenu();函数功能:显示菜单(欢迎界面)函数原型:char choice();函数功能:选择操作函数原型:void input(teacher stu,int Max,int cn);函数功能:录入教师信息函数原型:int findteacherID(teacher stu,int findID,int Max);函数功能:按编号查找教师信息函数原型:int findteacherNAME(teacher stu,char findNAME10,int Max) 函数功能:按姓名查找教师信息函数原型:void DisplayInfor(teacher stu,int Max);函数功能:显示教师信息函数原型:void DispQueryMenu();函数功能:显示查询菜单函数原型:int InforInput(teacher stu,int cn);函数功能:输入要录入的教师信息条数函数原型:void QueryInfor(teacher stu,int Max);函数功能:信息查询函数原型:void EditInfor(teacher stu,int Max); 函数功能:修改教师信息(信息编辑)函数原型:DEL(teacher stu,int Max,int i)函数功能:删除数据项函数原型:DelInfor(teacher stu,int Max)函数功能:删除信息函数原型:SortInforMenu(teacher stu,int Max)函数功能:显示排序菜单函数原型:SortInfor(teacher stu,int Max,char i)函数功能:信息排序函数原型:Save(teacher stu,int Max)函数功能:存储信息(2 )模块说明 模块一:显示菜单(欢迎界面),选择所要进行的操作void DispMainMenu() printf("*教师信息管理系统1.0*n"); printf("nt 程序开发人:王明明 学号:1402030123nn"); printf("t1-教师信息录入 t2-教师信息修改n"); printf("t3-教师信息查询 t4-教师信息删除n"); printf("t5-教师信息排序 t0-退出n"); printf("*n"); printf("请选择(0-5):");模块二:显示教师信息void DisplayInfor(teacher stu,int Max) int i; printf("n 教师号 姓名 年龄 性别 出生年月t 地址t 电话t E-mailn"); for(i=0;i<Max;i+) printf("%8d %10s %2d %2s %8d %15s %12s %10s",stui.ID,stui.Name,stui.Age,stui.Sex,stui.Birthday,stui.Adress,stui.TelNum,stui.Email); printf("n");模块三:录入教师信息void input(teacher stu,int Max,int cn) int i; for(i=cn;i<Max+cn;i+) printf("n请输入第%d个教师的教师号 (8个字符以内):",i+1); scanf("%d",&stui.ID); printf("ntt姓名(10个字符以内):"); scanf("%s",stui.Name); printf("nttt 年龄:"); scanf("%d",&stui.Age); printf("nttt性别(m或w):"); scanf("%s",&stui.Sex); printf("ntt 出生年月(8位):"); scanf("%d",&stui.Birthday); printf("nttt 地址:"); scanf("%s",&stui.Adress); printf("nttt 电话:"); scanf("%s",&stui.TelNum); printf("nttt E-mail:"); scanf("%s",&stui.Email); printf("n您的输入信息是:n"); DisplayInfor(stu,Max+cn);模块四:查找教师信息(一)按编号查找int findteacherID(teacher stu,int findID,int Max) int i; for(i=0;i<Max;i+) if(stui.ID=findID) break; if(i<Max) return i; else return -1;(二)按姓名查找int findteacherNAME(teacher stu,char findNAME10,int Max) int i; for(i=0;i<Max;i+) if(!strcmp(stui.Name,findNAME) break; if(i<Max) return i; else return -1;(三)查找void QueryInfor(teacher stu,int Max) char select; int i; int findID; char findNAME10; DispQueryMenu(); select=choice(); switch (select) case '1': printf("n按教师号查询n请输入教师的学号: "); scanf("%d",&findID); if (i=findteacherID(stu,findID,Max)!=-1) printf("查找结果如下:n"); printf(" 教师号 姓名 年龄 性别 出生年月t 地址t 电话t E-mail"); printf("%8d %10s %2d %2s %8d %15s %12s %10s",stui.ID,stui.Name,stui.Age,stui.Sex,stui.Birthday,stui.Adress,stui.TelNum,stui.Email); else printf("您输入的教师号不存在!n"); break; case '2': printf("n按姓名查询n请输入教师的姓名: "); scanf("%s",&findNAME); if (i=findteacherNAME(stu,findNAME,Max)!=-1) printf("查找结果如下:n"); printf(" 教师号 姓名 年龄 性别 出生年月t 地址t 电话t E-mail"); printf("%8d %10s %2d %2s %8d %15s %12s %10s",stui.ID,stui.Name,stui.Age,stui.Sex,stui.Birthday,stui.Adress,stui.TelNum,stui.Email); else printf("您输入的姓名不存在!n"); break; default : printf("选择错误!n"); 模块五:修改教师信息void EditInfor(teacher stu,int Max) int i; int findID; printf("n请输入教师的学号: "); scanf("%d",&findID); if (i=findteacherID(stu,findID,Max)!=-1) printf("姓 名: %sn",stui.Name); printf("原信息:%8d %2d %2s %8d %15s %12s %10s",stui.ID,stui.Age,stui.Sex,stui.Birthday,stui.Adress,stui.TelNum,stui.Email); printf("n 请输入新的教师号 (8个字符以内):",i+1); scanf("%d",&stui.ID); printf("ntt姓名(10个字符以内):"); scanf("%s",stui.Name); printf("nttt 年龄:"); scanf("%d",&stui.Age); printf("nttt性别(m或w):"); scanf("%s",&stui.Sex); printf("ntt 出生年月(8位):"); scanf("%d",&stui.Birthday); printf("nttt 地址:"); scanf("%s",&stui.Adress); printf("nttt 电话:"); scanf("%s",&stui.TelNum); printf("nttt E-mail:"); scanf("%s",&stui.Email); else printf("您输入的教师号不存在!n");模块五:删除教师信息DelInfor(teacher stu,int Max) int findID,i; char findNAME10,select; printf("*请选择删除方式*n"); printf("t1-按学号删除; t2-按姓名删除n"); printf("*n"); printf("请选择(1-2):"); select=choice(); switch (select) case '1': printf("n按教师号删除n请输入教师的教师号: "); scanf("%d",&findID); if (i=findteacherID(stu,findID,Max)!=-1) DEL(stu,Max,i); else printf("您输入的教师号不存在!n"); break; case '2': printf("n按姓名删除n请输入教师的姓名: "); scanf("%s",&findNAME); if (i=findteacherNAME(stu,findNAME,Max)!=-1) DEL(stu,Max,i); else printf("您输入的姓名不存在!n"); break; default : printf("选择错误!n"); 模块五:教师信息排序(一)选择排序方式SortInforMenu(teacher stu,int Max) char select; printf("*请选择排序方式*n"); printf("t1-按教师号排序; t2-按姓名排序n"); printf("*n"); printf("请选择(1-2):"); select=choice(); if (select='1'|select='2') SortInfor(stu,Max,select); else printf("选择错误!n");(二)排序操作SortInfor(teacher stu,int Max,char i) teacher teacher; int j=0,k,l=0; if(i='1') for(k=0;j<Max;j+) for(;k<Max-j-1;k+) if(stuk.ID>stuk+1.ID) teacher.ID=stuk+1.ID; strcpy(teacher.Name,stuk+1.Name); teacher.Age=stuk+1.Age; strcpy(teacher.Sex,stuk+1.Sex); teacher.Birthday=stuk+1.Birthday; strcpy(teacher.Adress,stuk+1.Adress); strcpy(teacher.TelNum,stuk+1.TelNum); strcpy(teacher.Email,stuk+1.Email); stuk+1.ID=stuk.ID; strcpy(stuk+1.Name,stuk.Name); stuk+1.Age=stuk.Age; strcpy(stuk+1.Sex,stuk.Sex); stuk+1.Birthday=stuk.Birthday; strcpy(stuk+1.Adress,stuk.Adress); strcpy(stuk+1.TelNum,stuk.TelNum); strcpy(stuk+1.Email,stuk.Email); stuk.ID=teacher.ID; strcpy(stuk.Name,teacher.Name); stuk.Age=teacher.Age; strcpy(stuk.Sex,teacher.Sex); stuk.Birthday=teacher.Birthday; strcpy(stuk.Adress,teacher.Adress); strcpy(stuk.TelNum,teacher.TelNum); strcpy(stuk.Email,teacher.Email); printf("n 教师号 姓名 年龄 性别 出生年月t 地址t 电话t E-mailn"); for(i=0;i<Max;i+) printf("%8d %10s %2d %2s %8d %15s %12s %10s",stui.ID,stui.Name,stui.Age,stui.Sex,stui.Birthday,stui.Adress,stui.TelNum,stui.Email); printf("n"); else if(i='2') for(k=0;j<Max;j+) for(;k<Max-j-1;k+) if(strcmp(stuk.Name,stuk+1.Name)>0) teacher.ID=stuk+1.ID; strcpy(teacher.Name,stuk+1.Name); teacher.Age=stuk+1.Age; strcpy(teacher.Sex,stuk+1.Sex); teacher.Birthday=stuk+1.Birthday; strcpy(teacher.Adress,stuk+1.Adress); strcpy(teacher.TelNum,stuk+1.TelNum); strcpy(teacher.Email,stuk+1.Email); stuk+1.ID=stuk.ID; strcpy(stuk+1.Name,stuk.Name); stuk+1.Age=stuk.Age; strcpy(stuk+1.Sex,stuk.Sex); stuk+1.Birthday=stuk.Birthday; strcpy(stuk+1.Adress,stuk.Adress); strcpy(stuk+1.TelNum,stuk.TelNum); strcpy(stuk+1.Email,stuk.Email); stuk.ID=teacher.ID; strcpy(stuk.Name,teacher.Name); stuk.Age=teacher.Age; strcpy(stuk.Sex,teacher.Sex); stuk.Birthday=teacher.Birthday; strcpy(stuk.Adress,teacher.Adress); strcpy(stuk.TelNum,teacher.TelNum); strcpy(stuk.Email,teacher.Email); printf("n 姓名 教师号 年龄 性别 出生年月t 地址t 电话t E-mailn"); for(;l<Max;l+) printf("%10s %8d %2d %2s %8d %15s %12s %10s",stul.Name,stul.ID,stul.Age,stul.Sex,stul.Birthday,stul.Adress,stul.TelNum,stul.Email); printf("n"); 模块六:存盘Save(teacher stu,int Max) int i=0 ; FILE *fp; if(fp=fopen("stu.txt","w+")=NULL) printf("ERROR!"); exit(0); for(;i<Max;i+) fprintf(fp,"%d ",stui.ID); fprintf(fp,"%s ",stui.Name); fprintf(fp,"%d ",stui.Age); fprintf(fp,"%s ",stui.Sex); fprintf(fp,"%d ",stui.Birthday); fprintf(fp,"%s ",stui.Adress); fprintf(fp,"%s ",stui.TelNum); fprintf(fp,"%s ",stui.Email); fclose(fp); printf("OK!");3.4系统测试1 欢迎界面2录入教师信息运行结果3教师信息修改运行结果4教师信息查询运行结果:5删除运行结果:6教师信息排序运行结果: 4 程序设计总结通过这几天来对这个C课程的设计,使我们充分体会到了编程给我们带来的乐趣,其中我们也会遇到编译错误,有时也会令程序无法运行,但我们没有放弃,而是几个人一起讨论,仔细查找造成问题的原因。既锻炼了我们的思维能力,有培养了我们的意志和毅力,使我们对C语言编程方面的能力得到了提高,而这些是我们在课本上所学不到的!当然,在这次课程设计中也暴露出我们的一些不足,比如编程时想当然,一些我们表面上看似成立的程序,实际上却可能根本无法运行,只有实际用C语言编译环境中运行一下才知道程序中存在的问题。这都是我们没有养成良好的编程习惯所造成的,毕竟我们才刚刚开始学习编程,以后的路还很长5 参考文献(1)C/C+程序设计,王连相等,中国科学技术出版社,2004 (2)C语言程序设计,谭浩强,清华大学出版社,1999 (3)C程序设计题解与上机指导,谭浩强,清华大学出版社,1999 (4)C语言使用程序荟萃,西安电子科技大学出版社,1993 (5)C语言函数手册,机械工业出版社,1999 (6)C语言的实际应用,安徽科学技术出版社,2000致谢 感谢XXX老师的悉心指导。 附录:程序源代码#include <stdio.h>#include <stdlib.h>#include <conio.h>#include <string.h> #define MAX_NUM 45#define teacher STUDENTstruct TEACHER int ID; char Name10; int Age; char Sex2; int Birthday; char Adress15; char TelNum12; char Email10;typedef struct TEACHER teacher;void input(teacher stu,int Max,int cn);int findteacherID(teacher stu,int findID,int Max);void DisplayInfor(teacher stu,int Max);void DispMainMenu();void DispQueryMenu();char choice();int InforInput(teacher stu,int cn);void QueryInfor(teacher stu,int Max);void EditInfor(teacher stu,int Max);void DispMainMenu() printf("*教师信息管理系统1.0*n"); printf("nt 程序开发人:王明明 学号:1402030123nn"); printf("t1-教师信息录入 t2-教师信息修改n"); printf("t3-教师信息查询 t4-教师信息删除n"); printf("t5-教师信息排序 t0-退出n"); printf("*n"); printf("请选择(0-5):");void DispQueryMenu() printf("*请选择查询方式*n"); printf("t1-按教师号查询; t2-按姓名查询n"); printf("*n"); printf("请选择(1-2):");char choice() char select; select=getche(); getch(); return (select);void DisplayInfor(teacher stu,int Max) int i; printf("n 教师号 姓名 年龄 性别 出生年月t 地址t 电话t E-mailn"); for(i=0;i<Max;i+) printf("%8d %10s %2d %2s %8d %15s %12s %10s",stui.ID,stui.Name,stui.Age,stui.Sex,stui.Birthday,stui.Adress,stui.TelNum,stui.Email); printf("n");void input(teacher stu,int Max,int cn) int i; for(i=cn;i<Max+cn;i+) printf("n请输入第%d个教师的教师号 (8个字符以内):",i+1); scanf("%d",&stui.ID); printf("ntt姓名(10个字符以内):"); scanf("%s",stui.Name); printf("nttt 年龄:"); scanf("%d",&stui.Age); printf("nttt性别(m或w):"); scanf("%s",&stui.Sex); printf("ntt 出生年月(8位):"); scanf("%d",&stui.Birthday); printf("nttt 地址:"); scanf("%s",&stui.Adress); printf("nttt 电话:"); scanf("%s",&stui.TelNum); printf("nttt E-mail:"); scanf("%s",&stui.Email); printf("n您的输入信息是:n"); DisplayInfor(stu,Max+cn);int findteacherID(teacher stu,int findID,int Max) int i; for(i=0;i<Max;i+) if(stui.ID=findID) break; if(i<Max) return i; else return -1;int findteacherNAME(teacher stu,char findNAME10,int Max) int i; for(i=0;i<Max;i+) if(!strcmp(stui.Name,findNAME) break; if(i<Max) return i; else return -1;int InforInput(teacher stu,int cn) int number; printf("n请输入本次录入的教师人数: "); scanf("%d",&number); if(number>MAX_NUM) printf("您输入的人数太多,大于%d人!n",MAX_NUM); return (0); input(stu,number,cn) ; return (number+cn);void QueryInfor(teacher stu,int Max) char select; int i; int findID; char findNAME10; DispQueryMenu(); select=choice(); switch (select) case '1': printf("n按教师号查询n请输入教师的学号: "); scanf("%d",&findID); if (i=findteacherID(stu,findID,Max)!=-1) printf("查找结果如下:n"); printf(" 教师号 姓名 年龄 性别 出生年月t 地址t 电话t E-mail"); printf("%8d %1

    注意事项

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

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




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

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

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

    收起
    展开