C语言课程设计-成绩管系统.doc_第1页
C语言课程设计-成绩管系统.doc_第2页
C语言课程设计-成绩管系统.doc_第3页
C语言课程设计-成绩管系统.doc_第4页
C语言课程设计-成绩管系统.doc_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

成绩管理系统 目录一、系统的意义及功能:2二、系统的功能结构图及调用关系:2三、分析介绍各个功能3四、程序运行界面6五、系统使用说明:8六、c语言源程序8七、心得体会:17八、实习日志:17九、参考文献:17一、系统的意义及功能: 意义: 根据自顶向下、逐步求精、模块化的原则完成一个学生成绩管理系统的程序设计,使之具有系统所需要的功能。 主要功能:(1) 具有求平均分、最高分、最低分的功能。(2) 具有学生信息排序功能。(3) 具有学生成绩基本信息浏览功能。(4) 具有学生成绩基本信息添加功能。(5) 具有学生成绩基本信息功能。(6) 具有学生成绩基本信息查询功能。二、系统的功能结构图及调用关系:主函数处理成绩信息排序信息浏览信息添加信息删除信息查询 退出系统三、分析介绍各个功能进入输入数字Case=?添加程序删除程序查找程序排序程序浏览程序处理程序退出Case=1Case=2Case=3Case=4Case=5Case=6Case=71、 学生信息的添加功能:进入输入输入学号、姓名、四门成绩输出所有退出2、 学生信息的删除功能:输入进入输入输入要删除的学生的学号输出所有退出3、 学生信息的查找功能:进入输入输入查找学生的学号输出所有退出4、 学生信息的排序功能:进入输入输入所有学生的学号输出所有退出5、 学生信息的浏览功能:进入输入打开文件输出所有退出6、 学生信息的处理功能:进入输入输入所有学生的学号输出所有退出四、程序运行界面学生信息添加界面运行界面学生信息查找界面查找界面五、系统使用说明:系统具有学生信息添加功能、学生信息删除功能、学生信息查找功能、学生信息排序功能、学生信息浏览功能、学生成绩求平均分、最大值、最小值功能。六、c语言源程序#include #include#includetypedef struct student int xuehao;char name20;int scores4;struct student * next;STU;void tianjia();void handle();void shanchu();void chaozhao();void paixu();void liulan();void main()char ch;FILE * fp;if(fp=fopen(student.dat,r)=NULL)fp=fopen(student.dat,w);fclose(fp);dosystem(cls);printf(*成绩统计系统*n);printf( 1: 添加学生信息 n);printf( 2: 删除学生信息 n);printf( 3: 查找学生信息 n);printf( 4: 学生信息排序 n);printf( 5: 浏览学生信息 n);printf( 6: 求平均值、最大值、最小值 n);printf( 7: 退出 n);printf(请选择输入选项1234567:);doch=getchar();while(ch!=1&ch!=2&ch!=3&ch!=4&ch!=5&ch!=6&ch!=7);getchar();switch(ch)case 1: tianjia(); break;case 2: shanchu(); break;case 3: chaozhao(); break;case 4: paixu(); break;case 5: liulan(); break;case 6: handle(); break;case 7: exit(0);printf( press any key to continue:n);getchar();system(cls);while(1);void handle()FILE *fp;STU * head, *p1, *p2;int i;int max4, min4;float aver4;if(fp=fopen(student.dat,r)=NULL)printf(can not open this file);exit(1);head=p1=p2=(STU *)malloc(sizeof(STU);while(!feof(fp)fscanf(fp,%d %s %d %d %d %dn,&p2-xuehao,p2-name,&p2-scores0,&p2-scores1,&p2-scores2,&p2-scores3);p1-next=p2;p1=p2;p2=(STU *)malloc(sizeof(STU);p1-next=NULL;free(p2);fclose(fp);for(i=0;iscoresi;maxi=mini=head-scoresi;p2=head-next;while(p2!=NULL)for(i=0;iscoresi;if(maxiscoresi)maxi=p2-scoresi;if(minip2-scoresi)mini=p2-scoresi;for(i=0;ixuehao,p2-name,&p2-scores0,&p2-scores1,&p2-scores2,&p2-scores3);p1-next=p2;p1=p2;p2=(STU *)malloc(sizeof(STU);p1-next=NULL;free(p2);fclose(fp);p2=p1;printf(输入待添加学生(-1 结束):n);while(1)p2=(STU *)malloc(sizeof(STU);printf(输入学号:);scanf(%d,&p2-xuehao);if(p2-xuehao=-1)break;printf(输入姓名:);scanf(%s,p2-name);printf(输入四门成绩:);scanf(%d%d%d%d,&p2-scores0,&p2-scores1,&p2-scores2,&p2-scores3);p1-next=p2;p1=p2;p1-next=NULL;free(p2);if(fp=fopen(student.dat,w)=NULL)printf(can not open this file);exit(1);p2=head;while(p2!=NULL)fprintf(fp,%d %s %d %d %d %dn,&p2-xuehao,p2-name,&p2-scores0,&p2-scores1,&p2-scores2,&p2-scores3);p2=p2-next;fclose(fp);free(head);void shanchu()FILE *fp;STU * head, *p1, *p2;STU t;if(fp=fopen(student.dat,r)=NULL)printf(can not open this file);exit(1);head=p1=p2=(STU *)malloc(sizeof(STU);while(!feof(fp)fscanf(fp,%d %s %d %d %d %dn,&p2-xuehao,p2-name,&p2-scores0,&p2-scores1,&p2-scores2,&p2-scores3);p1-next=p2;p1=p2;p2=(STU *)malloc(sizeof(STU);p1-next=NULL;free(p2);fclose(fp);p1=p2=head;printf(输入要查找学生学号(-1 结束):n);scanf(%d,&t.xuehao);getchar();while(p2!=NULL)if(head-xuehao=t.xuehao)head=head-next;p1-next=NULL;free(p1);p1=p2=head;elseif(p2-xuehao=t.next)p1-next=p2-next;p2-next=NULL;free(p2);p2=p1;p1=p2;p2=p2-next;p1-next=NULL;free(p2);if(fp=fopen(student.dat,w)=NULL)printf(can not open this file);exit(1);while(head!=NULL)fprintf(fp,%d %s %d %d %d %dn,&p2-xuehao,p2-name,&p2-scores0,&p2-scores1,&p2-scores2,&p2-scores3);head=head-next;fclose(fp);free(head);void chaozhao()FILE *fp;STU * head, *p1, *p2;STU t;if(fp=fopen(student.dat,r)=NULL)printf(can not open this file);exit(1);head=p1=p2=(STU *)malloc(sizeof(STU);while(!feof(fp)fscanf(fp,%d %s %d %d %d %dn,&p2-xuehao,p2-name,&p2-scores0,&p2-scores1,&p2-scores2,&p2-scores3);p1-next=p2;p1=p2;p2=(STU *)malloc(sizeof(STU);p1-next=NULL;free(p2);fclose(fp);p1=p2=head;printf(输入要查找学生学号(-1 结束):n);scanf(%d,&t.xuehao);getchar();while(p2!=NULL)if(p2-xuehao=t.xuehao)printf(%d %s %d %d %d %dn,&p2-xuehao,p2-name,&p2-scores0,&p2-scores1,&p2-scores2,&p2-scores3);p2=p2-next;void paixu()FILE *fp;STU * head, *p1, *p2;STU t;int i;if(fp=fopen(student.dat,r)=NULL)printf(can not open this file);exit(1);head=p1=p2=(STU *)malloc(sizeof(STU);while(!feof(fp)fscanf(fp,%d %s %d %d %d %dn,&p2-xuehao,p2-name,&p2-scores0,&p2-scores1,&p2-scores2,&p2-scores3);p1-next=p2;p1=p2;p2=(STU*)malloc(sizeof(STU);p1-next=NULL;free(p2);fclose(fp);printf(按照学号升序排序:n);for(p1=head;p1!=NULL;p1=p1-next)for(p2=p1-next;p2!=NULL;p2=p2-next)if(p1-xuehaop2-xuehao)t.xuehao=p1-xuehao;strcpy(,p1-name);for(i=0;iscoresi;p1-xuehao=p2-xuehao;for(i=0;iscoresi=p2-scoresi;p2-xuehao=t.xuehao;for(i=0;iscoresi=t.scoresi;if(fp=fopen(student.dat,w)=NULL)printf(can not open this file);exit(1);while(head!=NULL)fprintf(fp,%d %s %d %d %d %dn,&p2-xuehao,p2-name,&p2-scores0,&p2-scores1,&p2-scores2,&p2-scores3);head=head-next;fclose(fp);free(head);void liulan()FILE *fp;STU * head, *p1, *p2;if(fp=fopen(student.dat,r)=NULL)printf(can not open this file);exit(1);head=p1=p2=(STU*)malloc(sizeof(STU);while(!feof(fp)fscanf(fp,%d %s %d %d %d %dn,&p2-xuehao,p2-name,&p2-scores0,&p2-scores1,&p2-scores2,&p2-scores3);p1-next=p2;p1=p2;p2=(STU *)malloc(sizeof(STU);p1-next=NULL;free(p2);fclose(fp);p2=head;while(p2!=NULL)printf(%d %s %d %d %d %dn,&p2-xuehao,p2-name,&p2-scores0,&p2-scores1,&p2-scores2,&p2-scores3);p2=p2-next;七、心得体会: 在这为期一周的课程设计中,我发现了许多问题,也正是因为发现了这些问题也让我学会了很多东西。在写程序的过程中总会出现许多错误,这让我认识到我还有很多东西不会,也有很

温馨提示

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

评论

0/150

提交评论