c语言大作业学生成绩管理系统

  • 格式:doc
  • 大小:93.00 KB
  • 文档页数:18

学年论文 (学生成绩管理系统) 题 目: 学生成绩管理系统 作 者: 所在学院: 专业年级: 指导教师: 职 称: 2015 年 5 月27 日 目录 3.1录入成绩 ....................................................................................................................... 10 参考文献…………………………………………………………………………………………………………………………………..20 基本信息 姓名 学号 班级 课程名称 任课老师 学期 得分

引言 管理信息系统正在向着网络化、智能化和集成化等趋势发展。学生成绩管理系统是为了更好的管理学生考试成绩而开发的数据管理软件。它对于一个学校是不可缺少的重要部分,它的内容对于学校的决策者和管理者来说都至关重要。学生成绩管理管理系统为用户提供充足的信息和快捷的查询手段,实现学生基本信息、成绩的录入,查询,保存以及退出几方面的功能,是现实问题的迫切要求。 本系统开发的总体任务是实现学生成绩管理的系统化、规范化、自动化。达到提高学生成绩管理效率的目的。与传统管理方法相比有明显的优点:查找方便,可靠性高,保密性好,成本低。彻底改变了以前繁杂的管理模式,实现全面的、相对集中的、职能化的信息综合管理。提高了学生档案管理的效率和准确性,能够合理的安排时间,学生能够尽快的知道自己的考试成绩。同时,学生管理系统的应用也为今天的教育在未来市场的竞争力有所提高。 学生成绩管理系统是为了更好的管理学生考试成绩而开发的数据管理软件。它对于一个学校是不可缺少的重要部分,它的内容对于学校的决策者和管理者来说都至关重要。目前各个高校的基本情况是:每次考试结束,老师们都要统计大量的学生成绩,这些数据的归档、统计工作任务重,统计结束后往往错误百出。工作量之大,查阅,维护都有不同程度的问题存在。所以,学生成绩管理管理系统为用户提供充足的信息和快捷的查询手段,实现学生基本信息、成绩的录入,查询,保存以及退出等几方面的功能,是现实问题的迫切要求。 学院在教学这一部分主要是由教务处对课程、 对学生、 对学生成绩进行合理地安排以及统 筹计划,以及让教务处在最短的时间段把学生的成绩核算出来,提高教务处的办事效率。同时,能够随时对学生、学生成绩进行各种查询和统计,以及很好地对系统进行维护。 本课程设计主要运用C语言中的结构体、数组、文件等数据结构设计一个简单的管理系统应用程序。本程序设计出了学生成绩管理系统的基本功能,用C语言编程的学生成绩管管理系统,要求实现学生成绩管系统中,录入成绩、查询成绩(按学号查找和按名字查找)保存和退出系统等功能。下面具体的介绍本程序的基本功能:

第1章 程序说明和基本功能 1.1程序说明 1)成绩录入功能 可以保存每个学生的多门课成绩; 成绩一边录入,一边统计每个学生各门课程的总成绩; 录入成绩的时候自动保存,不必手动保存。 2)成绩查询功能 提供“按学号查询”和“按姓名查询”等两种查询。用户看自己的情况可以调选进行有关的成绩查询; 如果查询成功的话,分别输出学生的“学号”、“姓名”、“各门课程的成绩”、“各门课程的总成绩”和“平均成绩”; 如果查询失败,输出“没有这个同学”并返回查询界面; 如果再不想查询输入“0”可以返回主页面。 3)建立文件功能 存储文件使用指定文件名; 自动保存输入记录在文件里面; 如果已有文件,不保存文件。 4)退出功能 该功能用使用完后退出程序。

1.2整体功能 1)可以随时添加、检索、保存、退出。 (注:学号和姓名是随机输入的) 2)默认的学生总数40,课程总数10。这两个数字看情况可以改。 3)是学号可由11位字符(11位数字)组成的。 4)使姓名可由20位字符组成的。 5)使课程名称可由20位字符组成的。 6)学生成绩按照学生总数和课程总数确定。 7) 录入学生成绩的时候,一边录入成绩,一边计算机自动计算总成绩和平均成绩。 8) 将输出学生信息和成绩栏,例如 姓名 学号 英语 C语言 数字电路 总成绩 平均成绩 xxxx 96 90 85 271 90.3 9) 使用菜单实现功能的正确的选择。 10) 所有节点信息和成绩都是动态生成。

1.3测试程序 应列出测试大纲对程序进行测试; 应保证测试用例测试到程序的各种边缘情况.

1.4课程设计的总体设计(包含的功能模块) 1)函数声明部分和全局变量定义部分: #define MAXN 40 #define MAXM 11 char daris_ismi[MAXM][12]; char okuxnumuri[MAXN][11]; char ismi [MAXN][20]; float daris_natijisi[MAXN][MAXM]; float omumiynatijisi[MAXN]; int m,n; void kirguzux(); void takxurux(); void saklax(); void qikinix(); 2)成绩录入功能:void kirguzux (); 3)成绩查找功能:void takxurux (); 4)成绩保存功能: void saklax (); 5)退出功能: void qikinix ();

1.5各模块(函数)的功能介绍,设计描述 1) 模块的功能介绍: 2) 主函数: void main() 3) 成绩录入: void kirguzux (); 4) 成绩查找: void takxurux (); 5) 按学号查找: void takxurux1(); 6) 按姓名查找: void takxurux2(); 7) 成绩保存: void saklax (); 8) 退出功能: void qikinix (); 1.6数组设计描述 #define MAXN 40 #define MAXM 11 char daris_ismi[MAXM][12]; char okuxnumuri[MAXN][11]; char ismi[MAXN][20]; float daris_natijisi[MAXN][MAXM]; float omumiynatijisi[MAXN]; int m,n;

这是一个二维数组,其中MAXN表示班级人数的最大值,MAXM表示课程门数的最大值,ismi表示学生的姓名,okuxnumuri表示学生的学号,daris_ismi表示每门课程的名称,daris_natijisi表示学生每门课程的成绩,omumiynatijisi表示学生每门课程的总成绩,n表示我们当前输入的学生人数,m表示我们当前输入的课程门数 。

第2章 系统总体设计 本系统设计的函数是由一个主函数几个子函数组成的。首先构思大局编出一个主函数,然后根据要实现的功能逐步细分设计,分别解决输入、查找、保存、退出功能的子函数编程中遇到的问题。首先通过结构体的定义,确定成绩管理系统的项目和大小。首先通过输入函数添加信息,然后再逐步编写和验证其它功能。显示函数的设计利用C语言的循环功能依次输出信息。查找是用一个字符串比较得出两个相同的字符串的方法找出用户要查找的人,for循环和 while循环在这此设计中也起了很大的作用。

2.1概要设计 系统功能模块图如图1所示:

图1 系统功能模块图 主函数

输入成绩 成绩查询 保 存 退 出 2.2主函数 主函数部分,用户可以通过选择该项前的代码来实现想要实现的功能,其流程图如图2所示:

2.3输入成绩 将结构体数组分成几个数组分别对每个数组赋值,用for循环对不同地址的数组分别赋值。其流程图如图3所示:

2.4查询成绩 查询成绩功能的流程图如图4所示:

假 2.5保存功能 保存功能的流程图如图5所示:

int tallax tallax<0||tallax>4 返回 tallax 结束

开始 输入选项1真 假

图2 主函数流程图 j=0 j

j++ 返回 m 结束

开始 输入信息 输入数目

真 假

图3 输入函数流程

j=0 开始 输入数目

输出信息 调用printf函数 j<0||j>2

没有这个同学 是否继续

调用查找函数 图4 查询成绩函数流程图

开始 结束 假 真

真 2.6退出功能 退出功能用于退出当前程序,按4键便会退出系统 即流程图如图6所示:

第3章 实验结果 3.1录入成绩 请输入全班人数:2↙ 请输入课程门数:2↙ 请输入2门课程名称: 第1门课程名称:英语↙ 第2门课程名称:C语言↙ 请输入2个学生的数据: 请输入第1个学生的数据: 学号:↙ 姓名:xxxxxxxx↙ 2门课程的成绩: 英语:98↙ C语言:97↙ 请输入第2个学生的数据: 学号:↙ 姓名:xxxxxxxx↙ 2门课程的成绩: 英语:94↙ C语言:93↙ 输入成功。

3.2查询成绩 选1: 请输入要查询的学号:↙ 学号: 姓名: xxxxxxxx 英语:98 C语言:97 总成绩:195.00 平均成绩:97.50 ↙ 没有这个同学。 选2:

n=4 谢谢您的

结束

开始

图6退出函数流程图 返回n