• 大小: 3KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-06-18
  • 语言: C/C++
  • 标签: c++语言  

资源简介

该课设具是以c++语言来编写的作业管理系统。能查看学生作业信息

资源截图

代码片段和文件信息

# include 
# include 
# include 
using namespace std;
struct SCORE               //定义存放学生成绩信息的结点
{
    int num;               //作业编号
string content;           //作业内容
string name;            //姓名
int id;         //学号
float score;        //就算计基础成绩
float scoresum;        //总成绩
struct SCORE * next;   //next为指向下一结点的指针
};
struct SCORE * head;       //指向链表头结点的指针
int studentSum=0;          //学生总人数
class record
{
public:
    struct SCORE * InsertRecord(struct SCORE * h);        //增加学生成绩信息
struct SCORE * DeleteRecord(struct SCORE * h);        //删除学生成绩信息
struct SCORE * UpdateRecord(struct SCORE * h);        //修改学生成绩信息
    void FindRecord(struct SCORE * hint xfloat s1float s2);    //根据作业分数分数段查询学生成绩信息
void FindRecord(struct SCORE * hstring x);           //根据学生姓名查询成绩信息
void FindRecord(struct SCORE * hint x);              //根据学生学号查询成绩信息
void FindRecord(struct SCORE * hint ffloat x);              //根据作业编号查询成绩信息

void PrintRecord(struct SCORE * h);                   //输出所有学生成绩信息
void SaveRecordFile(struct SCORE * h);                //保存学生成绩信息到文件
struct SCORE * LoadRecordFile(struct SCORE * h);      //从文件中加载学生成绩信息
};
struct SCORE * record::InsertRecord(struct SCORE * h)
{
    struct SCORE * p1*p2*p3;                //定义指针变量p1、p2、p3
p3=new SCORE;                             //创建新的学生成绩结点
cout<<“\n请输入学生学号:“;
cin>>p3->id;                             //从键盘接收输入数赋值给结点的学号
cout<<“\n请输入学生姓名:“;
cin>>p3->name;                            //从键盘接收输入数赋值给结点的姓名
cout<<“\n请输入作业编号:“;
cin>>p3->num;                            //从键盘接收输入数赋值给结点的数学成绩
cout<<“\n请输入学生作业内容:“;
cin>>p3->content;                         //从键盘接收输入数赋值给结点的英语成绩
cout<<“\n请输入学生的作业分数:“;
cin>>p3->score;                        //从键盘接收输入数赋值给结点的计算机成绩

p3->next=NULL;                            //将要插入结点的指针域设置为空
if(h==NULL)                               //当链表中没有结点时,将要加入的结点作为头结点
{
        h=p3;
return h;
}
p1=p2=h;
while(p1!=NULL)          //查找结点的学号大于要插入结点学号的第一个结点
                                      //指针p1表示符合条件的结点的指针,指针p2是指针p1的前一个结点指针
{
p2=p1;
p1=p1->next; 
}
if(p1==h)                                 //插入位置为头结点前
{
p3->next=p3;
h=p3;
return h;
}
else                                      //插入位置为链表中间和链表尾部
{
p2->next=p3;
p3->next=p1;
}
studentSum+=1;                            //学生人数加1
return h;    }
void record::PrintRecord(SCORE * h)
{
    if(h==NULL)
{
cout<<“\n抱歉,没有任何记录!\n“;
return;
}
cout<<“\n学号\t姓名\t作业编号\t作业内容\t作业分数“< while(h)                                  //输出链表中每个结点的学生成绩信息
{
cout<id<<“\t“<name<<“\t“<num<<“\t“<content<<“\t“<score<<“\t“< h=h->next;
}
}
struct SCORE * record::DeleteRecord(struct SCORE * h)
{
    struct SCORE * p1* p2;
int id;
if(h==NULL)                                  //链表为空
{
cout<<“\n抱歉,没有任何记录!“;
return h;
}
p1=p2=h;                                     //将链表

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       12333  2019-03-05 13:45  作业管理\ss.cpp
     目录           0  2019-03-31 16:19  作业管理\

评论

共有 条评论