c语言 数据结构 课程设计 源码
infoBook.c
#include "dataStruct.h"
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <string.h>
#define MAXSIZE 200
#define SAVEALL 0
#define APPEND 1
void add(list li, node newnd)
{
li->count++;
/*更改插入结点的前后关系*/
node temp = li->top->pre;
li->top->pre = newnd;
newnd->next = li->top;
newnd->pre = temp;
newnd->pre->next = newnd;
}
void order(list li)
{
/*采用插入排序,找到应插入的位置*/
node tail = li->top->pre;
node pre = tail->pre;
for (int n = 1; n < li->count; n++)
{
if (strcmp(tail->name, pre->name) < 0)
{
pre = pre->pre;
}
}
/*将待排序的尾结点从链表中移除,并将其插入pre所指结点之后*/
li->top->pre = tail->pre; //更改尾节点
tail->pre->next = li->top;
pre->next->pre = tail;
tail->next = pre->next; //插入
pre->next = tail;
tail->pre = pre;
}
void save(char *filename, list li, int type)
{
FILE *fp = NULL;