学生成绩管理系统 谢谢大侠们帮忙

来源:百度知道 编辑:UC知道 时间:2024/07/04 02:21:27
基本要求
1熟练掌握源程序代码输入、编辑,代码的编译,链接,运行,以及程序的调试和异常处理等基本要求。
2.全面掌握编译语言的基本语法,包括概念性定义、过程调用、数据处理、异常处理等,如变量,表达式,运算符,函数,数组,类定义等,方法的调用、循环语句,分枝判断等,异常的捕获、抛出与处理等,文件、数据库处理等;
3掌握面向对象的、模块化的程序设计方法,注重基本语句的编写与编程技巧相互结合,并能够熟练运用开发工具提供的功能,完成上机训练。
训练内容
训练题目为“学生成绩管理系统”,其实现不局限于C语言,主要功能包括以下几个方面:
1能输入 添加 修改 删除学生的个人信息以及各科成绩
2可对学生成绩进行总分合计 平均分计算 单科排名以及综合成绩排名
3可按照学生姓名 学号 或者其他信息进行学生以及其成绩的综合查询
4能够队按照班级 个人等形式对学生信息一起成绩进行报表汇总与打印
5建立学生成绩数据库或者磁盘文件 储存相关信息
上述基本要求必须全部完成,初次之外的扩展功能根据个人能力和兴趣进行,不限定范围,评定成绩时会根据扩展功能进行适当考虑。

/*定义学生结构体*/

struct Student

{

char ID[20];

char Name[20];

float Mark1;

float Mark2;

float Mark3;

float Average;

};

/*声明学生数组及学生数量*/

struct Student students[1000];

int num=0;

/*求平均值*/

float Avg(struct Student stu)

{

return (stu.Mark1+stu.Mark2+stu.Mark3)/3;

}

/*通过学号返回数组下标*/

int Student_SearchByIndex(char id[])

{

int i;

for (i=0;i<num;i++)

{

if (strcmp(students[i].ID,id)==0)

{

return i;

}

}

return -1;

}

/*通过姓名返回数组下标*/

int Student_SearchByName(char name[])

{

int i;

for (i=0;i<num;i++)