#include <iostream>
#include <string>
using namespace std;
typedef struct LNode {
int i;
struct LNode *next;
}LNode, *LinkList;
void InitList(LinkList& L);
void GetList(LinkList& L);
void DeleteList(LinkList& L);
void PrintList(LinkList& L);
int main() {
LinkList L;
InitList(L);
GetList(L);
DeleteList(L);
PrintList(L);
return 0;
}
/*初始化链表函数*/
void InitList(LinkList& L)
{
L = new LNode;
L->next = NULL;
}
/*链表赋值函数*/
void GetList(LinkList& L) {
LNode* p = L;
int j=1;
while (j<42) {
LNode* q = new LNode;
q->i = j;
p->next = q;
p = q;
j++;
}
p->next = L;
}
/*删除函数*/
void DeleteList(LinkList& L) {
LNode* p = L, *t = NULL;
int j = 41, i = 1;
while (j >= 3) {
t = p->next;
if (i%3==0) {
LNode* q = new LNode;
q = t->next;
p->next = q->next;
delete t;
i++;
j--;
}
else
{
p = p->next;
i++;
}
}
}
/*输出函数*/
void PrintList(LinkList& L) {
LinkList t=L;
t = L->next;
while (t!= L) {
cout << "存活数字为:" << t->i << endl;
t = t->next;
}
}

一直报错 ,不知道哪的问题 ,求解