c语言课程设计学生信息管理系统.docxVIP

c语言课程设计学生信息管理系统.docx

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
- - PAGE #- - - PAGE #- 题目名称:学生信息管理系统 算法分析: 1用结构体标出信息系统的成员:学生学号,学生姓名,班级,成绩,排名 2利用c语言的文件知识将系统的信息存放在c盘下的“”的文件夹下 3定义各个子函数(1)定义输入信息函数,将学生信息按一定格式用seanf函数输入(统计M个学生的信息); (2)定义输出函数,每两个表一页直到最后一个; (3)定义信息查询函数。a,定义按学号查询函数,如果输入的学号等于学生学号则输出要查询的信息;b,定义按姓名查询函数,如果输入的姓名字符串等于其中一个学生的姓名字符串则输出信息; e,定义按班级查找函数,如果输入的数字等于其中学生的班级数,则输出该信息;d,定义按成绩查找函数,如果输入的数字等于其中学生的成绩数,则输出该信息;e,定义查找总函数,输入一个数选择查找方式,1-4分别对应调用abed四个函数。 (4)定义删除信息函数。输入的数字作为要删除的学生学号,输出要删除的学生信息后选择是否删除,删除后将第g+1个的信息赋给第g个,输出删除后的信息表。 (5)定义信息修改函数。输入的数字等于要修改的学生学号, 输出要修改的学生信息后选择是否修改,用switch,ease语句选择 要修改的项目,输入n,y决定是否继续直到不继续修改,输出学生信息。 (6)定义信息统计函数。输入一个数字作为成绩,比较M个学 生成绩是否等于输入的数字,统计相等的个数n输出。 (7)定义成绩排序函数。用冒泡排序法将M个学生的成绩按从大到小的顺序排列后输出。 4定义主函数。调用读取文件函数,输入数字1-5分别对应调用修改学生信息函数,删除学生信息函数,查找学生信息函数,统计学 生信息函数,学生成绩排行信息函数,0表示退出系统。最后调用保存文件函数。结束程序。 流程设计: 学生信息管理系统 用结构体说明各个成 定义各个子函数定义删除信息疋义修改信息函定义信息查询函数定义统计函数定义成绩排序函数 定义各个子函数 定义删除信息 疋义修改信息函 定义信 息查询函数 定义统计函数 定义成绩排序函数 定义按学号,姓名,班级,成绩的函数 将第 g+1个信息 赋给第g switc h,case语 句选择查 判断是否继续修改直到不继续,结 1■数 1 选择要修改的信息1-4 选择要删除的学号,判断是否删除 比较成绩数是否等于输入数 计数,输岀n 定义主函数,用switch case选择要调用的子函数 保存文件退出系统结束 代码设计: #include #include #include #defineM2 #definePAGE2 /*学生信息结构体类型*/ typedefstruct {intnum;/* 学号*/ charname[20];/* 姓名*/ intbanji;/* 班级*/ intchengji;/* 成绩*/ intpaiming;/* 排名*/ }STUDENTS; intread_file(STUDENTSstudents[])/*文件的读取*/ {FILE*fp;/*定义一个文件指针变量*/ inti=0; 打开一个文读取文件*/if((fp=fopen(,r))==NULL)/*文件空判断, 打开一个文 读取文件*/ 件*/ {printf(\n\n*****库存文件不存在!请创建); return0; } while(feof(fp)!=1)/*文件是否结束*/ {fread(students[i],sizeof(STUDENTS),1,fp);/* - - PAGE #- - - PAGE #- if(students[i].num==0)/*学号是否为零*/ break; else i++; } fclose(fp);/*关闭文件*/ returni; } voidsave_file(STUDENTSstudents[],intsum)/*保存文件*/ {FILE*fp; inti; if((fp=fopen(,wb))==NULL)/*判断文件是否为空*/ {printf(读文件错误!\n); return; } for(i=0;isum;i++) 向文最多%dif(fwrite(students[i],sizeof(STUDENTS),1,fp)!=1)/*件写入的数据块不等 向文 最多%d printf(写文件错误!\n); fclose(fp); } /*输入模块*/ intinput(STUDENTSstudents[]) {inti=0; printf(\n\n录入学生信息(人)\n,M); printf(\n); do {printf(\nprintf(\n第 {printf(\n printf(\n 第%4人,i+1); 学生学号:); scan

文档评论(0)

sunmuq + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档