一.实验目的
巩固线性表的数据结构的存储方法和相关操作,学会针对具体应用,使用线性表的相关知识来解决具体问题。
二. 实验内容
1.建立一个由n个学生成绩的顺序表,n的大小由自己确定,每一个学生的成绩信息由自己确定,实现数据的对表进行插入、删除、查找等操作。分别输出结果。
源代码:
#include <iostream>
#include<string>
using namespace std;
const int MaxSize = 10;
struct Student //定义Student结构体
{
string name;
int Chinese;
int Math;
int English;
int Sum;
};
ostream& operator << (ostream& os, const Student &ob) //重载左移运算符,使其能直接输出自定义类型“Student”
{
os << ob.name << "\t";
os << ob.Chinese << "\t";
os << ob.Math << "\t";
os << ob.English << "\t";
os << ob.Sum << "\t";
return os;
}
template <class DataType>
class AddressList
{
public:
AddressList(DataType a[], int n);
~AddressList();
int Length();
DataType Get(int index);
int Locate(string x);
void Insert(DataType x, int index);
DataType Delete(int i);
void PrintList();
private:
int length;
DataType **table; //模拟指针表, table指向数组,数组中存储类型DataType的指针
};
template <class DataType>
void AddressList<DataType> ::PrintList()
{