资源简介
要求处理的数据:准考证号、姓名、性别(男或女)、出生年月、身份证号码(允许空)、文科或理科、语文、数学、英语成绩(<150)、文综/理综成绩(<300)。
系统功能:
1)学生数据录入(从格式化的文本文件读入,文本格式自己定义)和存储(至文件),要求对输入的数据进行各种检验(检验必须尽可能完整)。
系统功能:
2)学生信息的查询(可以指定各种条件,如:按准考证号、姓名、身份证号码等)
3)按各种顺序输出(必须包含部分统计信息,如:总分、排名等);
4)数据的修改和删除(必须先查询到要删除的一条记录);
5)统计与分析,包括:各学生总分、排名,各科平均分、各分数段人数、最高、最低分,可以按文理科
代码片段和文件信息
/*
* Manage类实现文件
*
* 统计函数
*
*/
#include “manage.h“
/******************************** 统 计 函 数 **********************************/
void Manage::Count(void)
{
if (m_stud.empty())
{
cout << “\n\t请先进行数据录入!\n“ << endl;
return;
}
system(“cls“);
cout << “\n\t===================== 统 计 菜 单 =====================\n“ << endl;
cout << “\t\t\t平 均 分 --- 【 e 】\n“ << endl;
cout << “\t\t\t最高分和最低分 --- 【 f 】\n“ << endl;
cout << “\t\t\t各个分数段人数 --- 【 h 】\n“ << endl;
cout << “\t\t\t退 出 --- 【 0 】\n“ << endl;
cout << “\t=======================================================\n“ << endl;
Mode take = GetMode(GetChoice());
switch (take)
{
case AVERAGE: //统计平均分
CountAver();
break;
case HIGH: //统计最高最低分
CountHL();
break;
case FIELD: //统计各个分数段人数
CountField();
break;
case EXIT: //退出
break;
default:
cout << “选择不正确 将退出!“ << endl;
break;
}
}
//-----------------------------------------------
//统计平均分
void Manage::CountAver(void)
{
double sumCh = 0; //语文的总分
double sumMa = 0; //数学的总分
double sumEn = 0; //英语的总分
double sumCo = 0; //综合的总分
system(“cls“);
cout << “\n\t-------------- 统 计 各 科 平 均 分 ----------------\n“ << endl;
cout << “\t\t\t按 理 科 --- 【 i 】\n“ << endl;
cout << “\t\t\t按 文 科 --- 【 j 】\n“ << endl;
cout << “\t\t\t按 性 别 --- 【 k 】\n“ << endl;
cout << “\t\t\t全 部 --- 【 o 】\n“ << endl;
cout << “\t\t\t退 出 --- 【 0 】\n“ << endl;
cout << “\t----------------------------------------------------\n“ << endl;
Mode take = GetMode(GetChoice());
Liter lst;
int size = 0; //人数
switch (take)
{
case SCIENCE:
{
for (lst=m_science.begin(); lst!=m_science.end(); ++lst)
{
//计算对应分数的和
sumCh += lst->GetChinese();
sumMa += lst->GetMath();
sumEn += lst->GetEnglish();
sumCo += lst->GetComplex();
}
size = m_science.size();
cout << “\n\t理科的各科平均分:“ << endl;
break;
}
case LIBERAL:
{
for (lst=m_liberal.begin(); lst!=m_liberal.end(); ++lst)
{
//计算对应分数的和
sumCh += lst->GetChinese();
sumMa += lst->GetMath();
sumEn += lst->GetEnglish();
sumCo += lst->GetComplex();
}
size = m_liberal.size();
cout << “\n\t文科各科平均分:“ << endl;
break;
}
case SEX:
{
m_temp.clear();
//计算男生的人数
int number = 0;
for (lst=m_stud.begin(); lst!=m_stud.end(); ++lst)
{
if (lst->GetSex() == “女“)
{
m_temp.push_back(*lst);
}
else
{
number++;
//计算对应分数的和
sumCh += lst->GetChinese();
sumMa += lst->GetMath();
sumEn += lst->GetEnglish();
sumCo += lst->GetComplex();
}
}
size = number;
break;
}
case ALL:
{
for (lst=m_stud.begin(); lst!=m_stud.end(); ++lst)
{
//计算对应分数的和
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 73809 2008-09-21 15:45 高考成绩管理系统\code.txt
文件 9883 2008-10-23 23:53 高考成绩管理系统\count.cpp
文件 3608 2008-10-31 16:24 高考成绩管理系统\date.cpp
文件 1190 2008-10-12 18:34 高考成绩管理系统\date.h
文件 215236 2008-10-23 23:53 高考成绩管理系统\Debug\count.obj
文件 276228 2008-10-25 18:03 高考成绩管理系统\Debug\date.obj
文件 146160 2008-10-23 20:47 高考成绩管理系统\Debug\erase.obj
文件 255739 2008-10-26 00:28 高考成绩管理系统\Debug\find.obj
文件 141656 2008-10-23 20:34 高考成绩管理系统\Debug\main.obj
文件 159634 2008-10-23 20:39 高考成绩管理系统\Debug\modify.obj
文件 270776 2008-10-26 00:30 高考成绩管理系统\Debug\other.obj
文件 255000 2008-10-26 00:03 高考成绩管理系统\Debug\person.obj
文件 70227 2008-10-31 16:11 高考成绩管理系统\Debug\show.obj
文件 113740 2008-10-25 14:16 高考成绩管理系统\Debug\sort.obj
文件 290578 2008-10-31 16:11 高考成绩管理系统\Debug\student.obj
文件 192512 2008-10-31 16:11 高考成绩管理系统\Debug\vc60.pdb
文件 811071 2008-10-31 16:11 高考成绩管理系统\Debug\高考成绩管理系统.exe
文件 1770496 2008-10-31 16:11 高考成绩管理系统\Debug\高考成绩管理系统.pdb
文件 3775 2008-10-23 20:46 高考成绩管理系统\erase.cpp
文件 670 2008-10-18 00:05 高考成绩管理系统\error.h
文件 4247 2008-10-26 00:28 高考成绩管理系统\find.cpp
文件 2212 2008-10-21 13:25 高考成绩管理系统\main.cpp
文件 4760 2008-10-23 20:32 高考成绩管理系统\manage.h
文件 8356 2008-10-23 20:39 高考成绩管理系统\modify.cpp
文件 5509 2008-10-26 00:30 高考成绩管理系统\other.cpp
文件 7813 2008-10-31 16:24 高考成绩管理系统\person.cpp
文件 1612 2008-10-09 15:32 高考成绩管理系统\person.h
文件 7727 2008-10-31 16:11 高考成绩管理系统\show.cpp
文件 4429 2008-10-25 14:16 高考成绩管理系统\sort.cpp
文件 778 2008-10-23 16:35 高考成绩管理系统\stu.txt
............此处省略14个文件信息
- 上一篇:数据结构与C语言综合习题集
- 下一篇:郁金香VC++游戏辅助视频教程
评论
共有 条评论