文档详情

软件工程课程设计之学生成绩管理系统.pdf

发布:2025-05-25约8.9千字共10页下载文档
文本预览下载声明

软件工程课程设计之——学生成绩管理系

1.题目与要求

1.1问题提出

设计学生成绩管理系统,有N个学生,每个学生的

据包含学号(不重复卜姓名、三门课的成绩及平均成绩,

试设计一学生成绩管理系统

1.2本系统涉及的知识点

结构体组、结构体指针、组、循环、函、分

支、指针

1.3功能要求

1、成绩录入:输入学生的学号、姓名及三门课的成

绩;

2、成绩查询:(至少一种查询方式)。按学号查询

学生记录,或查询不及格学生的记录;

3、成绩统计:计算学生的平均分;根据学生的平均

分高低,对学生的据进行排序后输出;对学生单科成绩

排序,输出学生姓名与该科成绩;

4、退出系统:退出整个系统(即主菜单);

1.4根据所选菜单编写相应代码:

1)输入学生的信息,利用循环赋值的方式,给结构

体组赋值。

2)输出平均分函ave:首先定义double型组,

利用循环赋值的方式,计算出三门课的成绩的平均值放入

组中,利用循环的方式,输出相关值及平均值。

3)按学号查询成绩函search:首先输入要查询的

学号,与结构体中的学号进行比较,如果相等输出这个学

生的信息,另外输出没有查到相关结果。

4)按平均分排序后输出函average:首先另外一个

定义结构体组、结构体指针变量,计算三门课程的平均

值存到结构体成员aver中,利用循环的方式,进行平均

分排序,输出相应的学生信息。

5)对学生单科成绩排序后输出函grade:首先另外

一个定义结构体组、结构体指针变量,通过选择k的值

来选择按分几排序,利用循环的方式,进行单科成绩排

序(从大到小),输出学生姓名及该课的成绩。

6)退出程序。

2、附录:程序清单

#includestdio.h

#includestdlib.h

typedefstructstudent

intnum;

charname[13];

intscore[3];

doubleaver;

}STU;

voidaveSTUs[],intn)

{doublea[1000];

inti;

fori=0;in;i++)

H[i]=s[i].score[0]+s[i].score[l]+s[i].score[2])/3.0;

printf学号\t姓名\t\t分l\t分2\t分3\t平均分\n);

fori=0;in;i++)

nH

printf%d\t%s\t\t%d\t%d\t%d\t%.lt\n,sli].num,s[ij.name,

s[i].score[0],s[i].score[l],s[i].score[2],a[i]);

)

voidsearchSTUs[],intn,inta)

inti,k=0;

fori=0;in;i++)

if

显示全部
相似文档