学生成绩管理系统 (4).doc
《学生成绩管理系统 (4).doc》由会员分享,可在线阅读,更多相关《学生成绩管理系统 (4).doc(19页珍藏版)》请在沃文网上搜索。
1、一、课程设计目的1.学会将知识应用于实际的方法,提高分析和解决问题的能力,增加综合能力。2.为后续各门计算机课程的学习打下坚实基础,为毕业设计和以后工作打下必要基础。3.熟悉C语言程序的编辑、编译链接和运行的过程,至少能够用一种编译器较熟练地编辑、编译及调试程序。4.掌握C语言数据类型,如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法。5.学习并掌握C语言定义函数的基本方法、声明函数及调用函数的方法和过程。6. 掌握文件和文件指针的概念以及文件的定义方法,认识文件打开、关闭、读、写等文件基本操作函数。7.了解指针和链表的概念,掌握指针的定义和使用指针变量的方法以及链表的正确用法。灵活
2、使用链表来储存学生信息。二、课程设计内容1.能够对学生的学号,姓名,各科成绩进行统计,并计算出平均分。2.能分别按照学号系、姓名进行查询学生信息。3.能按学号、平均分高低进行排序并输出。4.能够添加、删除和更改学生的信息。开发工具Visual C+ 6.0运行平台Windows XP三、需求分析系统功能及性能的描述:密码模块:用户需要输入密码进行登录。输入模块:.能够对学生的学号,姓名,各科成绩进行输入并输出,同时计算出平均分。查找模块:.能分别按照学号、姓名进行查询学生信息。删除模块:能够根据学生学号进行删除信息。添加模块:可以添加学生信息并保存输出。排序模块:能按学号、各科成绩高低、总分和
3、平均分高低进行排序并输出。文件保存模块:.可以保存到文件(附加功能)。菜单模块:.以菜单方式工作。四、概要设计(1)系统结构图(功能模块图) 主模块 建立学生信息查询学生信息添加学生信息学生信息排序各函数菜单按学号查找学生信息打印学生信息退出系统删除学生信息按姓名查找学生信息按学号升序排序按平均成绩降序排序(2)功能模块说明1.各模块间通过菜单切换和调用2.主函数通过调用菜单函数实现对各功能模块的调用,各功能模块间根据需要可相互调用。3.程序能够保证各模块功能的独立和数据共享。4.相近功能以级联菜单的形式集成。五、详细设计及运行结果流程图, 函数之间相互调用的图示 ,程序设计及编码, 运行结果
4、。开 始输密码判断主函数创建函数添加函数插入函数.删除函数查找函数学号查找姓名查找排序函数退出系统录入函数保存函数信息显示正确错误学号升序平均分降序输出函数菜单函数输出查找结果退出 六、调试情况,设计技巧及体会进入系统后的主菜单:1总体过程编译和调试工具:选择Visual C+6.0,该工具稳定,其中有一个强大的调试工具,我比较熟悉。2 感受心得在两周的时间里,不断地对程序及各模块进行修改、编译、调试,其间遇到很多问题,最终还是被耐心的解决了。两个星期的程序设计,让我认识到学习C语言一定要有耐心,也要细心地对待每一个问题,即使很小的一个错误也可能造成严重的后果。同时也要在平时多积累经验,积累方
5、法,才能使编写的程序更清晰,更简单。七、参考文献1.C语言程序设计 王曙燕 曹锰 王春梅等 科学出版社 2005年2月2.C语言程序设计 谭浩强 清华大学出版社 1999年12八、附录:源代码:/*头文件*/#include #include #include #define N sizeof(M)struct stulong num;char name20;float score1,score2,score3;float aver;typedef struct s_typestruct stu student ;struct s_type *next;M;/*各函数的声明*/void log
6、in();void menu();void createlist(struct s_type *w);float averege( float a,float b,float c);void output(struct s_type *w);void search_num(struct s_type *w);void search_name(struct s_type *w);void del(struct s_type *w);void insert(struct s_type *w);void sort_score(struct s_type *w);void sort_num(struc
7、t s_type *w);/*文件的打开、创建函数*/struct s_type *read_inf()FILE *fp;fp=fopen(c:Softgrade.txt,wt+);if(fp=fopen(c:Softgrade.txt,wt+)=NULL)printf(读文件出错!);getch();exit(1);/*文件的保存函数*/void save(struct s_type *w)struct s_type *p1;FILE *fp;fp=fopen(c:Softgrade.txt,wt+);if(fp=NULL)printf(Error!press any key to retu
8、rn.n);getch();exit(1);for(p1=w-next;p1!=NULL;p1=p1-next)fwrite(p1,N,1,fp);fp=fopen(d:grade.txt,wt+);for(p1=w-next;p1!=NULL;p1=p1-next)fread(p1,N,1,fp);fclose(fp);/*登陆密码*/void login()char mi;char s7;int i,j,t;for(t=1;t=3;t+)printf(密码:);for(i=0;inext=NULL;p2=w; /*将申请到的空间作为头指针*/while(!feof(fp) /*循环读数据直
9、到文件尾结束*/p1=(M *)malloc(N);fread(p1,N,1,fp);p2-next=p1;if(!feof(fp)p2=p1;free(p1);p2-next=NULL;fclose(fp);return(w);/*创建学生信息列表*/void create(struct s_type *w)struct s_type *p,*q;long n;char choice,a20;float r,s,t;if(*w) *w=NULL;printf(n请输入学生信息:n);printf(n 学号: );scanf(%ld,&n);printf(n 姓名: );scanf(%s,a)
10、;printf(n 语文成绩: );scanf(%f,&r);printf(n 数学成绩: );scanf(%f,&s);printf(n 英语成绩: );scanf(%f,&t);p=(M *)malloc(N);p-student.num=n;strcpy(p-student.name,a);p-student.score1=r;p-student.score2=s;p-student.score3=t;p-student.aver=averege(r,s,t);p-next=NULL;*w=p;while(1)printf(n 学号: );scanf(%ld,&n);printf(n 姓
11、名: );scanf(%s,a);printf(n 语文成绩: );scanf(%f,&r);printf(n 数学成绩: );scanf(%f,&s);printf(n 英语成绩: );scanf(%f,&t);q=p;p=(M *)malloc(N);p-student.num=n;strcpy(p-student.name,a);p-student.score1=r;p-student.score2=s;p-student.score3=t;p-student.aver=averege(r,s,t);p-next=NULL;q-next=p;printf(还要继续输入吗?(Yes or
12、No): );flushall();scanf(%c,&choice);if(choice=n|choice=N) break;float averege(float a,float b,float c)float aver;aver=(a+b+c)/3;return aver;/*根据学号查找学生信息*/void search_num(struct s_type *w)long x;printf(请输入要查询的学生信息的学生学号:nn);scanf(%ld,&x);printf(n您查找的学生信息如下:nn); while(w&w-student.num!=x) w=w-next;if(w=
13、NULL)printf(nn*Error,no such student!*n);elseprintf(%ld %s %.2f %.2f %.2f %.2fn,w-student.num,w-student.name,w-student.score1,w-student.score2,w-student.score3,w-student.aver);/*根据姓名查找学生信息*/void search_name(struct s_type *w) char m20;printf(n请输入要查询的学生信息的学生姓名:n);scanf(%s,m);printf(n您查找的学生信息如下:nn);whi
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生成绩管理系统 4 学生 成绩管理系统
