📄 clist.cpp
字号:
#include "Clist.h"
#include<iostream>
#include <fstream>
using namespace std;
//#include"ulist.h"//包含类的头文件
/**
请增加CUList的一个成员函数,voi print(); 将链表输出
*/
bool LoadScore(char * sScoreFile,CUList * pScoreList);//从文件中装载学生成绩
void main()
{
CUList TestList_1;
bool ret = LoadScore("C:\\stu_list.txt",&TestList_1);
CUList TestList_2(TestList_1);//拷贝构造函数
CUList TestList_3(TestList_2);
CUList TestList_4(TestList_2);
TestList_1.Clear();
TestList_2.Clear();
TestList_4.Sort(1,true);
TestList_4.print();//输出检查
TestList_4.Sort(1,false);
TestList_4.print();//输出检查
TestList_4.Sort(4,true);
TestList_4.print();//输出检查
TestList_4.Sort(4,false);
TestList_4.print();//输出检查
TestList_4.Delete("200600888");
TestList_4.Delete("200600056");//最开始一个记录
//TestList_4.Delete("YYYYYY");//最后一个记录
TestList_4.print();//输出检查
int nCurrentCount = TestList_4.GetCount();
STUDENT aNewStudent= {"2006ABC0099","王小三",88.3f,56.6f,25.6f,3};
TestList_4.Add(aNewStudent);
if(strcmp( TestList_4.Find(aNewStudent).Name," ") <0 )
cout<<"错误1";
if(TestList_4.GetCount() != nCurrentCount +1)
cout<<"错误2";
TestList_4.print();//检查是否添加了aNewStudent
CUList TestList_5 = TestList_4;//赋值运算符重载
CUList TestList_6 = TestList_4;//赋值运算符重载
TestList_4.Clear();
TestList_5.print();//检查TestList_5 是否= TestList_4
if( !(TestList_6 == TestList_5) )
cout<<"错误3";
{
CUList TestList_7 = TestList_6 + TestList_5;
TestList_7.Sort(3,true);//按学号升序排列
TestList_7.print();
TestList_7.Clear();
}
}
#define STUDENT_STRUCT_SCORECOUNT 3 //结构体中存储的成绩个数
//从指定的文件中装载学生数据
bool LoadScore(char * sScoreFile,CUList * pScoreList)//ScoreList 学生成绩链表
{
//ScoreList;//学生成绩链表
ifstream inFile(sScoreFile,ios::in);
if(!inFile.is_open()) return false;
while(!inFile.eof())
{
STUDENT aStudent;
aStudent.ScoreCount = STUDENT_STRUCT_SCORECOUNT;
{//读一个学生的数据
inFile>>aStudent.NUMBER>>aStudent.Name;
for(int i = 0;i<aStudent.ScoreCount;i++)
inFile>>aStudent.Score[i];
}
pScoreList->Add(aStudent);
}
return false;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -