学生成绩管理系统数据结构-课程设计报告(编辑修改稿)内容摘要:
*/ repeat5:printf(\t\t请输入数学成绩 (0~100):)。 scanf(\t\t\t%g,amp。 stud[n+i].math)。 if(stud[n+i].math0||stud[n+i].math100 ) { printf(\t\t\t输入错误,请重新输入 !\n)。 goto repeat5。 } repeat6:printf(\t\t请输入英语成绩 (0~100):)。 scanf(\t\t\t%g,amp。 stud[n+i].english)。 if(stud[n+i].english0||stud[n+i].english100 ) { printf(\t\t\t输入错误,请重新输入 !\n)。 goto repeat6。 } printf(\t\t是否继续输入记录 ?(Y/N))。 scanf(\t\t%c,amp。 sign)。 /*输入判断 */ i++。 } return(n+i)。 } 调用 display 函数 (本函数的功能是显示学生的各类信息和规定输出格式 ,时间复杂度为 O(n)) void Display(Student stud[],int n) /*浏览所有记录 */ { int i。 printf( \n)。 /*格式头 */ printf( 学期 学生证号 姓名 语文 数学 英语 \n)。 printf( \n)。 for(i=1。 in+1。 i++) { printf( %8d%15s%15s%15g%15g%5g\n,stud[i1].term,stud[i1].num,stud[i1].name,stud[i1].chinese,stud[i1].math,stud[i1].english)。 } printf(\t\t\t)。 system(pause)。 } 调用排序 函数 ( Sort 函数, heapsort 函数和 sift 函数) ( 本函数的功能是对学生的 成绩 进行排序 ,时间复杂度为 O(n)) 调用 Sort 函数 void Sort(Student stud[],int n) { int i。 for(。 ) { switch(menu6()) { case 1: heapsort(stud,n)。 printf(\t\t\t 语文成绩排序 \n)。 printf(\n)。 printf(\t\n)。 /*格式头 */ printf(\t 学期 学生证号 姓名 语文 \n)。 printf(\t\n)。 for(i=1。 in+1。 i++) printf(\t%8d%15s%15s%15g%\n,stud[i1].term,stud[i1].num,stud[i1].name,stud[i1].chinese)。 system(pause)。 break。 case 2: heapsort1(stud,n)。 printf(\t\t\t 数学成绩排序 \n)。 printf(\n)。 printf(\t\n)。 /*格式头 */ printf(\t 学期 学生证号 姓名 数学 \n)。 printf(\t\n)。 for(i=1。 in+1。 i++) printf(\t%8d%15s%15s%15g%\n,stud[i1].term,stud[i1].num,stud[i1].name,stud[i1].math)。 system(pause)。 break。 case 3: heapsort2(stud,n)。 printf(\t\t\t 英语成绩排序 \n)。 printf(\n)。 printf(\t\n)。 /*格式头 */ printf(\t 学期 学生证号 姓名 英语 \n)。 printf(\t\n)。 for(i=1。 in+1。 i++) printf(\t%8d%15s%15s%15g\n,stud[i1].term,stud[i1].num,stud[i1].name,stud[i1].english)。 system(pause)。 break。 case 4: return。 } } } 调用 sift 函数 (调整堆) /* 调整堆 */ void sift(Student stud[],int t,int w) { int i,j。 Student x。 i=t。 x=stud[i]。 j=2*i+1。 while(j=w) {if((jw)amp。 amp。 (stud[j].chinesestud[j+1].chinese)) j++。 if(stud[j].chinese) { stud[i]=stud[j]。 i=j。 j=2*j+1。 } else break。 } stud[i]=x。 } void sift1(Student stud[],int t,int w) { int i,j。 Student x。 i=t。 x=stud[i]。 j=2*i+1。 while(j=w) {if((jw)amp。 amp。 (stud[j].mathstud[j+1].math)) j++。 if(stud[j].math) { stud[i]=stud[j]。 i=j。 j=2*j+1。 } else break。 } stud[i]=x。 } void sift2(Student stud[],int t,int w) { int i,j。 Student x。 i=t。 x=stud[i]。 j=2*i+1。 while(j=w) {if((jw)amp。 amp。 (stud[j].englishstud[j+1].english)) j++。 if(stud[j].english) { stud[i]=stud[j]。 i=j。 j=2*j+1。 } else break。 } stud[i]=x。 } 调用 heapsort 函数 /* 堆排序的算法 */ void heapsort(Student stud[],int j) { int i。 Student x。 for(i=j/21。 i=0。 i) sift(stud,i,j1)。 for(i=j1。 i0。 i) { x=stud[0]。 stud[0]=stud[i]。 stud[i]=x。 sift(stud,0,i1)。 } } void heapsort1(Student stud[],int j) { int i。 Student x。 for(i=j/21。 i=0。 i) sift1(stud,i,j1)。 for(i=j1。 i0。 i) { x=stud[0]。 stud[0]=stud[i]。 stud[i]=x。 sift1(stud,0,i1)。 } } void heapsort2(Student stud[],int j) { int i。 Student x。 for(i=j/21。 i=0。 i) sift2(stud,i,j1)。 for(i=j1。 i0。 i) { x=stud[0]。 stud[0]=stud[i]。 stud[i]=x。 sift2(stud,0,i1)。 } } 调用 add_a_record 函数 ( 本函数的功能是添加一个学生的信息 ,时间复杂度为 O(n)) int add_a_record(Student stud[],int n) /* 添加多条信息 */ {char x[10],sign。 int j,i=0。 while(sign!=39。 n39。 amp。 amp。 sign!=39。 N39。 ) /*判断 */ { repeat1: printf(\t\t 请输入学期 :)。 scanf(\t\t%d,amp。 stud[n+i].term)。 if(stud[n+i].term!=1amp。 amp。 stud[n+i].term!=2) { printf(\t\t\t 输入错误,请重新输入 !\n)。 goto repeat1。 } repeat2: printf(\t\t 请输入学生证号 :)。 /*交互输入 */ scanf(\t\t%s,stud[n+i].num)。 for(j=0。 jn+i。 j++) if(strcmp(stud[n+i].num,stud[j].num)==0) /*判断是否输入重复学生学号 */ { printf(\t\t\t 学生学号已存在,请重新输入 !\n)。 goto repeat2。 } repeat3: printf(\t\t 请输入学生姓名 :)。 scanf(\t\t%s,stud[n+i].name)。 for(j=0。 jn+i。 j++) if(strcmp(stud[n+i].name,stud[j].name)==0) /*判断是否输入重复学生姓名*/ { printf(\t\t\t 学生姓名已存在,请重新输入 !\n)。 goto repeat3。 } repeat4: printf(\t\t 请输入语文成绩 (0~100):)。 scanf(\t\t\t%g,amp。 stud[n+i].chinese)。 if(stud[n+i].chinese0||stud[n+i].chinese100 ) /*输入不合理成绩的错误提示 */ { printf(\t\t\t 输入错误,请重新输入 !\n)。 goto repeat4。 } /*重新输入该科成绩 */ repeat5:prin。学生成绩管理系统数据结构-课程设计报告(编辑修改稿)
相关推荐
r(51)、密码 Varchar(51)、昵称 Varchar(51)、所属班级 ID bigint、照片地址 Varchar(201)。 图 8 学生管理智能监控系统概念数据模型 辅助建模 顺序图 顺序图说明了进入该系统 的整个的一个过程,该过程不一定能从表面上看到,但是必须符合逻辑顺序,下图为该系统的登陆的顺序图。 第 13 页 图 9 学生管理智能监控系统登陆顺序图 图 10
功能控件的事件及代码。 以及菜单实现的方法。 文章的最后则给出了本系统的主要功能源代码。 本系统具有数据输入,数据存储,档案查询,报表打印等功能,系统的人机对话界面友好。 系统功能全面,用户操作方便是本设计的一个特色。 关键字:面向对象 档案 档案管理 VISAUL 11 Abstract administrative system of the student information
........................................................... 18 湖南涉外经济学院本科生毕业设计(论文) 1 第一章 前 言 随着 21 世纪经济全球化和信息时代的到来 , 高校教育体制改革的深入和招生规模的 扩大, 学生收费收入在高校总收入中所占的比重不断提高,已成为高校教育及建设经费的主要来源, 很多高校收费收入已经超过 了 财政
对学生进行 查看、 添加 、删除。 (4)管理员可以对课程安排 进行查看、 添加、 删除 、修改。 (5)管理员可以对学生成绩进行查看、添加、删除、修改。 对于学生来说,他们所关心的是登录系统后能够 查看自己各科的成绩及以往的成绩 , 另外还应能够对 个人 信息进行修改。 因此总结出如下需求信息。 (1)学生可以 登录系统查看成绩。 湖北经济学院专科毕业(设计)论文 10 (2)学生
笔记本电脑上完成的,本电脑采用 windows7 系统, i5 双核处理器,硬盘为 500GB,利用 Delphi 和 SQL Serve2020。 Delphi 是一个对象导向设计的应用程序语言,是开发数据库前端的优秀工具,它的编程语言简洁明快、组件功能强大和编程环境灵活方便。 采用 Delphi 来开发数据库应用程序具有更大的灵活性和可扩展性。 SQL Server 是一个
班人员对当天值班情况进行一个小记,以便日后查看。 运行图 如下 : 图 对于一个稍显正规的软件来说帮助的制作都是必不可少的内容,本程序也不例外,制作了此帮助文档。 在程序中可以按 F1 或点击帮助菜单来显示此。 以便对本软件进行快速操作。 运行图如下 : 图 13 学生宿舍管理系统的设计与实现 第四章 程序设计 作为宿舍管理是从新生入学开始的,包括了新生籍贯信息、性别、专业、班级