以下为《c 实验报告模板》的无排版文字预览,完整格式请下载
下载前请仔细阅读文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。
C++程序设计
实 验 报 告
(2021秋季学期)
课程名称:
C++程序设计实验
学号:
***428
姓名:
丘某某
专业:
信息与计算科学
班级:
信计2104班
指导教师:
宁 丹
地点:
逸夫楼204云机房
实验评价:
南华大学***
二0二一年 12 月 31 日
实验项目名称:
班级成绩管理系统
一、设计内容及要求
设计并实现学生类和班级类,使得:??????????????????????????
学生类对象:????????????????????????????????????????????????????????至少具备以下属性:学号、姓名(不超过20个英文字符如zhangsan,用string类型)、4门课成绩;
?至少提供以下功能:初始化(带参、无参版均需设计)、销毁、录入学生信息、输出学生信息、求平均分、各种get操作、set操作;
班级类对象:??????????????????????????????????????????????????至少具备以下属性:班级号(不超过6位数字,整型)、实际学生人数(不超过40个学生,用学生数组);
至少提供以下功能:初始化(带参、无参版均需设计)、销毁、录入班级(包括所有学生)信息、输出班级(包括所有学生)信息、输出第i门课程的所有学生成绩表(学号、姓名、该门课成绩)、查询某姓名学生信息(返回其下标);查询班级最高平均分学生信息(返回其下标)、班级内学生排序(以平均分为关键值升序排序)、增加某个学号的学生数据、删除某个学号的学生数据;
二、需求分析
本程序用C++语言编写,完成以下功能:
1)设计并实现类
2)运用数组与指针
3)实现选择与循环
4)设计并实现多个函数
三、概要设计
参考示例(红色文字请删除后用自己内容填充):
为了实现上述程序功能,需要定义int,double,void,bool,string,class类型:
class Student{...};class Class{...};
……
2)本程序包含30个函数:
student();
~student();
void addid1(string a);
void setstudent();//录入学生信息
void printstudent();//输出学生信息
string getxuehao();//得到学号
string getname();//得到姓名
int getsum();//输出总成绩
void print1(int n);// 6.输出第I门课所有学生成绩
int getiscore(int i);//得到第I科成绩
void modifyname();
void modifyxuehao();
void modifycj();
Class();
~Class();
void getbanji();//输入班级信息
void addstudent();//1.输入学生信息
void printClass();//2.输出班级(包括所有学生)信息
void find();//3.查询某名学生信息
bool findstudent(student R[], string n);
bool findstudentname(student R[], string n);
void modify1(int j);
void modify(int t);
void average();// 4.班级类平均分排序
void averagehighest();//5.查询班级最平均分高分的人
void printscore();// 6.输出第I门课所有学生成绩
void Delete();// 7.删除某个学号的学生数据
void Deletesx(int x);//8.清空系统
void qk();
int main(){};
四、详细代码与说明
#include
#include
using namespace std;
static int jl = 0;
class student {
public:
student();
~student();
student& operator=(student& a);
void addid1(string a);
void setstudent();//录入学生信息
void printstudent();//输出学生信息
string getxuehao();//得到学号
string getname();//得到姓名
int getsum();//输出总成绩
void print1(int n);// 6.输出第I门课所有学生成绩
int getiscore(int i);//得到第I科成绩
void modifyname();
void modifyxuehao();
void modifycj();
private:
string m_xuehao;
string m_name;
int score[4];
};
//班级类
class Class {
public:
Class();
~Class();
void getbanji();//输入班级信息
void addstudent();//1.输入学生信息
void printClass();//2.输出班级(包括所有学生)信息
void find();//3.查询某名学生信息
bool findstudent(student R[], string n);
bool findstudentname(student R[], string n);
void modify1(int j);
void modify(int t);
void average();// 4.班级类平均分排序
void averagehighest();//5.查询班级最平均分高分的人
void printscore();// 6.输出第I门课所有学生成绩
void Delete();// 7.删除某个学号的学生数据
void Deletesx(int x);//8.清空系统
void qk();
private:
student R[40];
int m_size;
int id;
};
//学生类实现
student::student() {}
student::~student() {}
student& student::operator=(student& a) {
this->m_xuehao = a.m_xuehao;
this->m_name = a.m_name;
this->score[0] = a.score[0];
this->score[1] = a.score[1];
this->score[2] = a.score[2];
this->score[3] = a.score[3];
return *this;
}
void student::addid1(string a) {
m_xuehao.insert(0, a);
}
//得到学号
string student::getxuehao() {
return m_xuehao;
}
//得到姓名
string student::getname() {
return m_name;
}
void student::setstudent() {
cout m_name;
cout m_xuehao;
int n;
for (int i = 0; i < 4; i++) {
cout 100) {
cout n; break;
}
}score[i] = n;
}
cout
以上为《c 实验报告模板》的无排版文字预览,完整格式请下载
下载前请仔细阅读上面文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。