学生信息管理系统c代码_第1页
学生信息管理系统c代码_第2页
学生信息管理系统c代码_第3页
学生信息管理系统c代码_第4页
学生信息管理系统c代码_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学生信息管理系统c代码学员信息管理系统(C语言项目制作)由于考试发的是全国信息化工程师“岗位技能”证书,比较重视项目制作能力和动 手能力,要求学生必须做一个项目,该项目要有一定实用价值,本文讲述“学员信息管 理系统”地制作,学完该项目后,关于用C语言编写、与数据管理有关的项目,大家应该都就会做了。一、软件需求分校1、任务描述随着学校规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长, 学生信息管理工作变得更加复杂,需要规范的学生信息管理系统来提高工作效率。2、功能模块学员信息旨理系统图13、功能演示3.1、 启动软件,进入程序主界面(图2)欢迎进入=学员信息管理系统= 按任意键初始

2、化学员信息图2按屏幕提示“按任意键初始化学员信息”:(图3)欢迎进入=学员信息管理系统= 技任意犍初始化学员信息共有6条学员信息按任意键进入主目录.一学生信息管理系统c代码图3“按任意键进入主目录”:(图4)=邛员信息管理系统= 以下是程序主目录,请选择功能示我入改 显查福删背 >>>>>>> 1 2 3 4 S 6 011 / 20键入功能前的数字后,按,如键:图43.2、 键入“1”,选择“显示”命令,可以显示所有学生信息:(图5)字号姓名语文数学英语001Lil6887.363.S002L1269rQ78.0的阳Li378,0bvra8SBLi4

3、6B,075.00兆Li5GS.BB2.0飒Li685 .目69,073M按任意梃进入主甘录,一图5(图3.3、 返回主目录“图4”,键入“2”,选择“查找”命令,查找指定学号的信息:6是查找“ 002”号学员后,返回的学员信息):请输入要查询的学生的学号:002那号姓名语文数学英语002L42鸣.069.078.8按任意键进入主目录-.图63.4、 返回主目录“图4”,键入“ 3”,选择“录入”命令,录入新的学员信息:(图7是录入“ 007”号学员信息的步骤和结果):学生信息管理系统c代码谓铺入,,字号,”字号,,不允许为空字错崔;的7请谪入”姓名&在意,,姓铝型K能加空格:Li7请

4、输入“语文成辅' 5另 请输.N敷学成绩,版 请输入”英语成绩, 78按任意触进入主目录一. 图7(图83.5、 返回主目录“图 4”,键入“4”,选择“修改”命令,可修改学员信息:是录入“ 002”号学员信息的步骤和结果)户输入要修改的咨周学号皿 臃要懵改的学员书息如下.有输入修度后的“学呼弓“不允许为空三府一 » 育前入修炊后的“能告,:注更“性后里”文能加锦,LU 请输入修改后的”盾文廨,用请椅人修改后的“教学成绩将清椅人惨度后的“英国成绩,74祝望怎修改成功 图83.6、 返回主目录“图4”,键入“5”,选择“删除”命令,可删除指定学员信息:(图9是成功删除“ 005

5、”号学员信息的步骤和结果):瑞精入要删除的学法的学号;峰您要刑除的学员信息如下:竽号姓名语文我学美语905bi585.065F882-0如将删除读学费梏息,继续躺除,请输入为“我者合则.请,入“或者呻氏y图9图10是删除“ 002”号学员不成功的步骤和结果:学生信息管理系统c代码谓瑜人要加除山平生的学4;皿 交赛删除的竽同信总如Ft卜号姓名语文裁学期吾I - .Mlm MlMl -IMIseaL12翻由?B.«74.0您称删除该学员咕E 咕谏瓠陈,清林3或者,鬲则,请输入51或考*空m 您三取悄册踪操作,删除不成功,报任芭褪迂入主国章.一 图10(图11是3.7、 返回主目录“图4”

6、,键入“6”,选择“排序”命令,可按学号排序: “按学号降序”的步骤和结果):以下是排序子目M,请选悴功能止放学专升(J的因能前的数毛R按“5降2 吱学事闰星如干上字号姓名日文暨其?IWLi7feV.HW9RLit一H加W-BWML14mr.a6IM49KMmiLi37B.HEMRkMBW2L1J27B.B74 .HIW1LilGB.FB87.MbJ.IV按在超接造人供/于目录. 图11图12是“按学号升序”的步骤和结果以下是排序子目录,骨赧司能:鲁皆算入功然前的数字后.技撰二1林甘升序姑果如下:学号姓名语文楚RR1Lilta.fifi7.AQ .Rf»2LLZ6».n78

7、.B74BffiilL1378.069.窗85 .5WML14E4.0£8.BL1gGE.aGS.079.0M7LIT59.«67.078,曲图12学生信息管理系统c代码、程序设计1、界面设计1.1、在软件开发中,程序界面有两种,如图 13所示:第一种界面:提示用户如何操作,指令如下:("欢迎进入=学员信息管理系统 =n");("nttt按任意键初始化学员信息nn");第二种界面:返回程序运算的结果,会在后面“算法”中介绍。1.2、 如何实现主目录界面?以下是程序主目录请选择功能示我入改除仔田的查普1J排退("")

8、;("以下是程序主目录,请选择功能nn");("1)显示n2)查找n3)录入n4)修改n5)删除n6) 排序n0)退出nn");("键入功能前的数字后,按 ""键:");健入功能前的数字后,按"Enm科 图141.3、 如何实现“键入功能前的数字后”,就能选择相应的命令?_(L'1':();显示所有学员信息2':();杳询学员信息'3':();录入新学员信息'4':(); 修改学员信息'5':(); 删除学员信息'6'

9、:();'0':; I艮田("请诜择功能前的数字n");K0X学生信息管理系统c代码()”函数实现说明:“()”中,代表输入的数字字符;用语句实现选择对应的命令;“显示所有学员信息”;“1.4、 如何实现“按任意键回到主目录”?("nnttt按任意键进入主目录();从键盘收任一个字符即返回,该函数在 中学号姓名语文薮学英悟001Lil87.0002Li278 .074.01.5、如何实现图15中“输出格式化”?图15("810101010sn","学号","姓名","语文&quo

10、t;,"数学","英语");("810101010sn","=","=","=","=","= =");("810-10.1f %-10.1f %-10.1f",“001”,T, 68, 87,63);("810-10.1f %-10.1f %-10.1f",“001”, “2”, 68, 78,74);在在中,“-”表示数据左对齐,“10.1”中的10表示输出宽度,“.1”表示输出1位小 数。2

11、、数据结构的设计2.1、 如何表示学生信息的数据类型在本项目中,学生信息包括“学号、姓名、三门课的成绩”可以用结构体数据类型来表不:定义学牛信息结构体类型10; 学号16; 姓名3;定义成绩数绢二2.2、 关于文件包含在项目中用到了很多库函数,因此在程序起始位置,需要用到文件包含:""学生信息管理系统c代码2.3、 关于“全局变量”由于程序中用到大量的函数,因此可以设置全局变量。;定义数据库实际学生数量10000;声明代表学生的结构体数组,假设最多有10000条数据2.4、 关于“函数声明”程序中用到大量的自定义函数,它们可能是主调函数,也可能是被调函数,为了扩展它们的作用

12、域,最好在程序前面加上函数声明。函数声明部分();初始化学员信息,把外存中学生数据读入到内存中();把内存中结构体数组中的学生数据保存到外存中();显示程序主目录();显示所有学员信息();录入新学员信息(80)杳找指定学号的学员.若找到返回该学员在数组中的下标.若没找到返回-1代表指定学号;在多个模块中用到该函数();根据学号杳找.并显示学员信息();修改学员信息();删除学员信息();对学员进行排序2.5、学号姓名语文数学英语miLilte-0002Li274 e0093Li378.06九的85国图16上面显示的是所有学生信息,这些学生数据在内存中的表现形式是常量、变量、数 组和链表的方式

13、,在外存中的表现形式是文件。由于断电后,内存信息会全部清空,因 此,内存信息需要经常存放到外存中。2.5.1、 文件操作的步骤(1)打开文件:(2)对文件读写操作:学生信息管理系统c代码(3)关闭文件:2.5.2、 从外存文件中读数据至内存数组*(,"r");0是数据库中实际学生数量,其全局变量()是代表学生的结构体数组(,"",1 , i, 学号,姓名i0, i1i2);;是三门课成绩的数组012.5.3、 把内存数组中数据输出到外存文件*(“”,"”);0;(0<)(,"810-10.1f-10.1f-10.1fn"

14、;1 , i,i0, i1i2); "-10.1f”中,-"'左对齐,10"宽度,:'1”小数位数();3、主要算法的实现1.1、 显示所有学员的信息(如图 17)学号姓名语文数学英语Lil6S-087,063.0B曲L127B国74.0003Li378-86985.0图17方法:遍历数组,用函数显示数据。(0<)(8l0-10.1f-10.1f-10.1fn",1 , i, i0i1i2);其中,是 实际学生数量”;代表学生信息的结构体数组“,学号",姓名”,三门学生信息管理系统c代码课成绩的数组1.2、 查找指定学号方

15、法:遍历数组,查找指定学号的学员,函数返回值是找到后的学号的下标,如果 指定学号不存在,返回-1 ;(80)代表要查找的学号 i;(0)代表实际的学生数量(i)0) i;是表示学生信息的结构体数组名-1;1.3、 插入新的学员信息叁输入,哗号,,呼号u不允许为空字卷串:育输木唯名,注恚,姓名,里不能加空熔:1小话输入"语文成绩' 都第输入“数殍成绩,。请输入,宾语成绩'判图18方法:(1)依次输入新学员信息,并赋值给新变量s; (2)把s添加到数组中;(3)把内存数据保存至外存。()录入新学员信息代表新学员信息下面输入新学员信息("nnn请输入"学

16、号", "学号"不允许为空字符串:");d("n请输入"姓名",注意"姓名"里不能加空格:");("X("n请输入"语文成绩":");("n请输入 ”数学成绩":");("n请输入"英语成绩":");学生信息管理系统c代码(""2);把s添加到结构体数组中;同时把表示学员数量的变量增加1L()函数把内存中结构体数组中的学生数据保存到外存中1.4、 修改学员信

17、息方法:(1)查找到指定学员的数组下标n; (2)输入修改后的学员信息,存贮到临时变量s中;(3)把s临时变量赋值给n,即n ; (4)保存数据到外存文件。() 修改学员信息80作为临时变量.临时存放修改后的学生信息("n请输入要修改的学生的学号:");();函数返回要杳找的学号的下标("nnn请输入修改后的 "学号". '"学号'"不允许为空字符串:");a("n请输入修改后的 "姓名",注意"姓名里"不能加空格:");("X(

18、"n请输入修改后的”语文成绩":");(""0);("n请输入修改后的 ”数学成绩":");(""1);("n请输入修改后的"英语成绩":");(""2); n把修改后的侑保存到内存数组中()把内存数据保存到外存数据文件中1.5、 删除某学员信息方法:(1)查找到指定学员的数组下标n; (2)把后续数据前移,实现删除操作;(3)保存数据到外存文件。学生信息管理系统c代码()删除学员信息80;("n请输入要删除的学生的学号:&q

19、uot;);("");();(<2) i1删除指定学号;()把内存数据保存到外存数据文件中1.6、 对学员排序下面是升序排序:(0<2)(1<1)(ij)>0)fflj三、对本项目的拓展1、本程序是用结构体数组实现,您可以用结构体链表来实现所有的算法;2、结构体的成员发生改变,本结构体成员有:学号、姓名、三门课成绩。您可以增 加成员,如性别、年龄、或更多门课的成绩;3、把系统改为教师信息管理系统”、档案信息管理系统”、订单管理系统”等。 四、附完整的程序代码学员信息管理系统文本文件实时存储数据,运用结构体数组 "" "&

20、quot; "" "";定义数据库实际学生数量 定义学生信息结构体类型10;学号学生信息管理系统c 代码16; 姓名3; 定义成绩数组 ;10000; 声 明结构体数组,假设最多10000 条信息函数声明部分(); 初始化学员信息,把外存中学生数据读入到内存中(); 把内存中结构体数组中的学生数据保存到外存中(); 显示程序主目录(); 显示所有学员信息(); 录入新学员信息( 80) 查找指定学号的学员,找到返回该学员在数组中的下标,没找到返回-1 代表指定学号;在多个模块中用到该函数(); 根据学号查找,并显示学员信息(); 修改学员信息(); 删除

21、学员信息(); 对学员进行排序函数定义() 程序进入“欢迎界面”("nnnnntt 欢迎进入学员信息管理系统n");按任意键初始化学员信息("nttt 按任意键初始化学员信息.nn");(); 从键盘收任一个字符即返回,该函数在中()初始化学员信息,把外存中学生数据读入到内存中("ttt 共有 条学员信息")是实际学生数量# / 20学生信息管理系统c 代码("nnttt 按任意键进入主目录.");(); 从键盘收任一个字符即返回,该函数在中()调出“程序主目录”显示和返回到程序主目录() 代表用户所选择的子目录号

22、("");("学员信息管理系统nn");("以下是程序主目录,请选择功能nn");("1)显示n2)查找n3)录入n4)修改n5)删除n6)排序n0)退出nn");("键入功能前的数字后,按""键: ");();()'1':显示所有学员信息("");();显示完毕,提示用户返回主程序("nnttt 按任意键进入主目录.");(); 从键盘收任一个字符即返回,该函数在中;'2'();查询学员信息'3

23、'(); ; 录入新学员信息'4'();修改学员信息'5'();删除学员信息'6'();对学员进行排序'0':; 退出(" 请选择功能前的数字n");13 / 20('0');()初始化学员信息,把外存中学生数据读入到内存中;("","r")("文件有错误! !程序不能运行! ! n");0 是数据库中实际学生数量,是全局变量() 是学号,是姓名,)是成绩 是学生结构体数组,全局变量(,"",012);(,&

24、quot;")0) 去掉学号为空字符串();把内存中结构体数组中的学生数据保存到外存中() i; *;("","w") 以写的方式打开文件,覆盖原文件("文件有错误! !程序不能运行! ! n");是学生结构体数组,全局变量(0<) 代表实际的学生数量(i,"")0) 去掉学号为空字符串的信息(,"810-10.1f-10.1f-10.1fn"ii,i0i1i2);();()显示所有学员信息学生信息管理系统c 代码("810101010sn"," 学

25、号 "," 姓名 ","语文 ","数学 ","英语 ");("810101010sn",","","","","");(0<)“ -”表示数据左对齐,“ 10.1”中的 10 表示宽度,“ .1”表示 1 位小数("810-10.1f-10.1f-10.1fn"ii,i0i1i2);查找指定学号的学员,代表指定学号()的下标,如果指定学号不存在,返回-1 ;在多个模块中

26、用到该函数( 80) i; 是表示学生信息的结构体数组名(0<) 代表实际的学生数量,(i)0) i;-1;() 根据学号查找,并显示学员信息80 n;("");("n 请输入要查询的学生的学号:");("");();(1)("n 对不起,您要查找的学员不存在n"); ("810101010sn"," 学号 ","姓名 ","语文 ","数学 ","英语 ");("81010101

27、0sn","","","","","");("810-10.1f-10.1f-10.1fn"nn,n0n1n2);显示完毕,提示用户返回主程序("nnttt 按任意键进入主目录.");15 / 20学生信息管理系统c 代码(); 从键盘收任一个字符即返回,该函数在中()录入新学员信息 代表新学员信息i;先显示已有学员信息("");(" 当前学员信息如下:n");("810101010sn"

28、;," 学号 "," 姓名 ","语文 ","数学 ","英语 ");("810101010sn","","","","","");(0<)("810-10.1f-10.1f-10.1fn"ii,i0i1i2);下面输入新学员信息("nnn 请输入 "学号 ", "学号 "不允许为空字符串:"

29、);("");("n 请输入 "姓名 ", 注意 "姓名"里不能加空格:");("");("n 请输入 "语文成绩":");(""0 );("n 请输入"数学成绩":");(""1 );("n 请输入"英语成绩":");(""2 );把临时变量s 赋到结构体数组中;同时把表示学员数量的变量增加1;()把内存中结构体数组

30、中的学生数据保存到外存中显示完毕,提示用户返回主程序("nnttt 按任意键进入主目录.");(); 从键盘收任一个字符即返回,该函数在中()修改学员信息80 s;("");("当前学员信息如下:n");()先显示所有学员信息("n 请输入要修改的学生的学号:");("");();(1)("n 对不起,您要查找的学员不存在n"); 您要修改的学员信息("n 您要修改的学员信息如下:n");("810101010sn"," 学号

31、 ","姓名 ","语文","数学 ","英语 ");("810101010sn","","","","","");("810-10.1f-10.1f-10.1fn"nn,n0n1n2);下面输入新学员信息");("nnn 请输入修改后的"学号 ", "学号 "不允许为空字符串:("");

32、("n 请输入修改后的"姓名",注意 "姓名里 "不能加空格:");("");("n 请输入修改后的"语文成绩": ");(""0 );("n 请输入修改后的"数学成绩":");(""1 );("n 请输入修改后的"英语成绩":");(""2 );17 / 20学生信息管理系统c 代码n把修改后的值保存到内存数组中()把内存数据保存到外存

33、数据文件中("nnttt 祝贺您修改成功!");显示完毕,提示用户返回主程序("nnttt 按任意键进入主目录.");(); 从键盘收任一个字符即返回,该函数在中()删除学员信息80 ;("");("n 请输入要删除的学生的学号:");("");();(1)("n 对不起,您要删除的学员不存在n"); 您要修改的学员信息("n 您要删除的学员信息如下:n");("810101010sn"," 学号 ","姓名 "," 语文 ","数学 ","英语 ");("810101010sn","","","","","");("810-10.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论