• 大小: 322KB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-01-30
  • 语言: C/C++
  • 标签: VC++  

资源简介

1、成绩录入;2、成绩查询;3、计算平均分;4、计算最高分;5、排名;6、退出。

资源截图

代码片段和文件信息

#include
#include
#include  
#include  
#include 

//using namespace std;

class Student
{
public:
char Name[20];//学生姓名
char Sex[6];//性别
char Class[10];//班级
char Id[6];//学号
float Score[4];//三科成绩
float Total;//总分
float Ave;//平均分
static int Total_Stu;//学生总人数
public:
Student();//默认构造函数
void SetStudent(char* char* char* char* float float float float);//设置学生信息
static void ShowTotalStu(){ cout << “当前系统中包含“ << Total_Stu << “位学生信息.\n“; }//显示学生总人数
friend ostream& operator<<(ostream& Student&);//重载<<运算符

void InputStudent();//输入学生信息
void OutputStudent();//输出学生信息
void SearchStudent();//搜索学生信息
void DeleteStudent();//删除学生信息
void ChangeStudent();//修改学生信息
void SortStudent();//按学号进行排序
void SortChinese();//对语文成绩排序
void SortMath();//对数学成绩排序
void SortEnglish();//对英语成绩排序
void SortWenzong();
void SortTotal();//对总分排序

friend void SaveStudent();//保存学生信息,声明为友元函数,便于访问保护数据
friend void LoadStudent();//下载学生信息
};
int Student::Total_Stu = 0;//静态成员初始化

struct StuNode//链表结构
{
Student stu;
StuNode *next;
};
StuNode *headstu = NULL;

Student::Student()
{
strcpy(Name “--“);
strcpy(Sex “--“);
strcpy(Class “--“);
strcpy(Id “000000“);
Score[0] = 0; Score[1] = 0; Score[2] = 0; Score[3] = 0;
}
void Student::SetStudent(char *name char *sex char *cla char *id float sco1 float sco2 float sco3 float sco4)
{
strcpy(Name name);
strcpy(Sex sex);
strcpy(Class cla);
strcpy(Id id);
Score[0] = sco1; Score[1] = sco2; Score[2] = sco3; Score[3] = sco4;
Total = Score[0] + Score[1] + Score[2] + Score[3];//计算总分和平均分
Ave = Total / 4;
}
ostream & operator<<(ostream &output Student &s)
{
output << setw(10) << s.Name << setw(6) << s.Sex << setw(10) << s.Class << setw(8) << s.Id << setw(8) << s.Score[0]
<< setw(8) << s.Score[1] << setw(8) << s.Score[2] << setw(8) << s.Score[3] << setw(8) << s.Total << setw(8) << s.Ave << endl;
return output;
}

void Student::InputStudent()
{
char name[20];
char sex[6];
char cla[10];
char id[6];
float sco[4];
char choose = ‘y‘;
while (choose != ‘n‘ && choose != ‘N‘)
{
cout << “请依次输入学生姓名、性别、班级、学号、语文成绩、数学成绩、英语成绩、文综成绩:\n“;
if (choose == ‘y‘ || choose == ‘Y‘)
{
StuNode *p = new StuNode;//新建链表指针
cin >> name >> sex >> cla >> id >> sco[0] >> sco[1] >> sco[2]>>sco[3];
p->stu.SetStudent(name sex cla id sco[0] sco[1] sco[2]sco[3]);
p->next = headstu;//前端插入
headstu = p;
Total_Stu++;//总数加1
cout << “继续添加?y/n“;
}
else
cout << “输入错误,请重新输入!\n“;
cin >> choose;
}
}
void Student::OutputStudent()
{
cout << setw(10) << “姓名“<< setw(6) << “性别“ << setw(10) << “班级“ << setw(8) << “学号“ << setw(8) << “语文“
<< setw(8) << “数学“ << setw(8) << “英语“< for (StuNode *p = headstu; p != NULL; p = p->next)//依次输出
cout << p->stu;//使用重载的<<运算符
}
void Student::SearchStud

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      60452  2018-09-25 10:03  成绩管理系统\Debug\Grade.obj

     文件          0  2018-09-25 10:15  成绩管理系统\Debug\student.dat

     文件      50176  2018-09-25 10:06  成绩管理系统\Debug\vc60.idb

     文件      69632  2018-09-25 10:03  成绩管理系统\Debug\vc60.pdb

     文件     266330  2018-09-25 10:03  成绩管理系统\Debug\成绩管理系统.exe

     文件     328356  2018-09-25 10:03  成绩管理系统\Debug\成绩管理系统.ilk

     文件     306360  2018-09-25 10:03  成绩管理系统\Debug\成绩管理系统.pch

     文件     533504  2018-09-25 10:03  成绩管理系统\Debug\成绩管理系统.pdb

     文件      17665  2018-09-25 10:03  成绩管理系统\Grade.cpp

     文件          0  2018-09-25 10:03  成绩管理系统\student.dat

     文件        145  2018-09-25 10:14  成绩管理系统\使用说明.txt

     文件       4349  2018-09-25 10:06  成绩管理系统\成绩管理系统.dsp

     文件        532  2018-09-25 10:02  成绩管理系统\成绩管理系统.dsw

     文件      33792  2018-09-25 10:06  成绩管理系统\成绩管理系统.ncb

     文件      48640  2018-09-25 10:06  成绩管理系统\成绩管理系统.opt

     文件        919  2018-09-25 10:03  成绩管理系统\成绩管理系统.plg

     目录          0  2018-09-25 10:15  成绩管理系统\Debug

     目录          0  2018-09-25 10:11  成绩管理系统

----------- ---------  ---------- -----  ----

              1720852                    18


评论

共有 条评论