📄 file.cpp
字号:
#include "base.h"
#include "fstream.h"
void ReadFile(SqList &L,char *p)
{//将文件p中的数据放入顺序表L中
fstream File;
int i;
File.open(p,ios::in);
if (!File){
cout<<"\t\t\t\t文件打开失败!"<<endl;
exit(0);
}
for(i=0;i<MAXSIZE;i++)
{
File>>L.r[i+1].key;
L.length++;
}
File.close();
}
void ReadFile(SLinkListType &SL,char *p)
{//将p中的数据放入静态链表SL中
fstream File;
int i;
File.open(p,ios::in);
if (!File){
cout<<"\t\t\t\t文件打开失败!"<<endl;
exit(0);
}
for(i=0;i<SIZE;i++)
{
File>>SL.r[i+1].rc;
SL.length++;
}
File.close();
}
void ReadFile(RedType D[],int &length,char *p)
{//将文件p中的数据放入数组D中
fstream File;
int i;
File.open(p,ios::in);
if (!File){
cout<<"\t\t\t\t文件打开失败!"<<endl;
exit(0);
}
for(i=0;i<MAX_SPACE;i++)
{
File>>D[i].key;
length++;
}
File.close();
}
void WriteFile(SqList L,char *q)
{//将顺序表L中数据写入文件q中
fstream File;
int i;
File.open(q,ios::out);
if (!File){
cout<<"\t\t\t\t文件打开失败!"<<endl;
exit(0);
}
for(i=1;i<MAXSIZE+1;i++)
{
File<<setw(8)<<L.r[i].key;
}
File.close();
}
void WriteFile(SLinkListType SL,char *q)
{//将静态链表SL中数据写入文件q中
fstream File;
int i;
File.open(q,ios::out);
if (!File){
cout<<"\t\t\t\t文件打开失败!"<<endl;
exit(0);
}
for(i=1;i<SIZE+1;i++)
{
File<<setw(8)<<SL.r[i].rc;
}
File.close();
}
void WriteFile(SLList SLL,char *q)
{//将静态链表SLL中数据写入文件q中
fstream File;
int i,j;
char c=' ';
File.open(q,ios::out);
if (!File){
cout<<"\t\t\t\t文件打开失败!"<<endl;
exit(0);
}
i=SLL.r[0].next;
j=0;
while(i)
{
for(j=SLL.keynum-1;j>=0;j--)
File<<SLL.r[i].keys[j];
File.put(c);
File.put(c);
File.put(c);
i=SLL.r[i].next;
}
File.close();
}
void WriteResult(float t[])
{
fstream File;
File.open("Result.txt",ios::out);
if (!File){
cout<<"\t\t\t\t文件打开失败!"<<endl;
exit(0);
}
File.precision(6);
File.setf(ios::fixed|ios::right|ios::showpoint);
File<<"各种排序用时比较:"<<endl;
File<<"各种排序均从a.txt~j.txt读取数据进行排序,时间取平均值."<<endl;
File<<"\n直接插入排序:";
File.width(10);
File<<t[1]/10<<" s"<<endl;
File<<"\n折半插入排序:";
File.width(10);
File<<t[2]/10<<" s"<<endl;
File<<"\n2-路插入排序:";
File.width(10);
File<<t[3]/10<<" s"<<endl;
File<<"\n表插入排序: ";
File.width(10);
File<<t[4]/10<<" s"<<endl;
File<<"\n希尔排序: ";
File.width(10);
File<<t[5]/10<<" s"<<endl;
File<<"\n冒泡排序: ";
File.width(10);
File<<t[6]/10<<" s"<<endl;
File<<"\n快速排序: ";
File.width(10);
File<<t[7]/10<<" s"<<endl;
File<<"\n简单选择排序:";
File.width(10);
File<<t[8]/10<<" s"<<endl;
File<<"\n堆排序: ";
File.width(10);
File<<t[9]/10<<" s"<<endl;
File<<"\n归并排序: ";
File.width(10);
File<<t[10]/10<<" s"<<endl;
File<<"\n基数排序: ";
File.width(10);
File<<t[11]/10<<" s"<<endl;
File.close();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -