归并两个有序的顺序表,要求两个有序顺序表的数据从文件读入,归并后的数据输出到结果文件中。(30分)
}
顺序表A的数据为:2,6,8,9,14,20,22
顺序表B的数据为:3,6,9,15
#include <stdio.h>
#define maxLen 100
typedef struct _SeqList
{
int Data[maxLen];
int size;
};
typedef struct _SeqList SeqList;
typedef struct _SeqList* pSeqList;
LoadData(char *fname, pSeqList la)
{
FILE *fp;
int temp;
int i=0;
fp = fopen(fname, "rt");
while (!feof(fp))
{
fscanf(fp, "%d/n", &temp);
la->Data[i++] = temp;
}
la->size = i;
fclose(fp);
}
OutputData(char *fname, SeqList la)
{
FILE *fp;
int i;
fp = fopen(fname, "wt");
for (i=0; i<la.size; i++)
fprintf(fp, "%d/n", la.Data[i]);
fclose(fp);
}
/*
Implement the following parts as ToDo
*/
MergeList( SeqList la, SeqList lb, pSeqList lc)
{
/* ToDo*/
}
main()
{
SeqList la, lb, lc;
LoadData("a.txt", &la);
LoadData("b.txt", &lb);
MergeList(la, lb, &lc);
OutputData("c.txt", lc);