Add files via upload
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
/**
|
||||
* @file statistical_analysis.h
|
||||
* @brief 统计分析功能头文件
|
||||
* @note 包含各种统计分析功能的函数声明
|
||||
*/
|
||||
|
||||
#ifndef STATISTICAL_ANALYSIS_H
|
||||
#define STATISTICAL_ANALYSIS_H
|
||||
|
||||
#include "config.h"
|
||||
#include "main_menu.h"
|
||||
|
||||
// 课程统计结构体
|
||||
typedef struct {
|
||||
int studentCount;
|
||||
float maxScore;
|
||||
float minScore;
|
||||
float totalScore;
|
||||
float averageScore;
|
||||
float passRate;
|
||||
} CourseStats;
|
||||
|
||||
// 分数分布结构体
|
||||
typedef struct {
|
||||
int excellent; // 90-100分
|
||||
int good; // 80-89分
|
||||
int medium; // 70-79分
|
||||
int pass; // 60-69分
|
||||
int fail; // 0-59分
|
||||
} ScoreDistribution;
|
||||
|
||||
// 学生排名结构体
|
||||
typedef struct {
|
||||
int studentIndex;
|
||||
float averageScore;
|
||||
float totalScore;
|
||||
} StudentRank;
|
||||
|
||||
// 总体统计结构体
|
||||
typedef struct {
|
||||
int totalStudents;
|
||||
int maleCount;
|
||||
int femaleCount;
|
||||
float averageAge;
|
||||
float highestAverage;
|
||||
float lowestAverage;
|
||||
float overallAverageScore;
|
||||
float standardDeviation;
|
||||
int totalCourses;
|
||||
float averageCoursesPerStudent;
|
||||
} OverallStats;
|
||||
|
||||
// 主要统计分析函数
|
||||
void displayCourseStatistics(); // 显示课程统计信息
|
||||
void displayScoreDistribution(); // 显示分数分布
|
||||
void displayStudentRanking(); // 显示学生排名
|
||||
void displayOverallStatistics(); // 显示系统总体统计
|
||||
|
||||
// 查找功能
|
||||
void findTopStudent(); // 查找最高分学生
|
||||
void findBottomStudent(); // 查找最低分学生
|
||||
void findTopScoreInCourse(); // 按课程查找最高分
|
||||
|
||||
// 计算函数
|
||||
CourseStats calculateCourseStats(const char* courseName);
|
||||
ScoreDistribution calculateScoreDistribution();
|
||||
OverallStats calculateOverallStats();
|
||||
void calculateStudentStats(Student* student);
|
||||
void updateGlobalStats();
|
||||
|
||||
#endif // STATISTICAL_ANALYSIS_H
|
||||
Reference in New Issue
Block a user