#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
const int m=30;
const int n=7;
typedef struct LNode
{
int No;
char Name[10];
int Key;
struct LNode *next;
};//定义一个结点
void output(LNode *);
void main()
{
LNode *L;
LNode *p;
int i;
L=(LNode*)malloc(sizeof(LNode));
if(p=NULL)
{
printf("No enough mermory !");
exit(1);
}
L->next=L; //L为头结点
for(i=n;i>0;i--)
{
p=(LNode *)malloc(sizeof(LNode));
if(p=NULL)
{
printf("no enough mermory !");
exit(1);
}
printf("Input the personel information !");
scanf("%d%s%d",&p->No,&p->Name,&p->Key);
p->next=L->next;L->next=p;
} //定义新结点并插入,从而构造一个链表
void output(LNode *L);//调用输出函数
}
int output(LNode *q)
{
int t, r, k;
int i=0;
r=n;
k=q->Key;
t=k%r;
if(t==0||t==1)
{
for(i=0;i<k-t;i++)
{
q=q->next;
if(q==NULL) return 0;
}
q->next=q->next->next;
q=q->next; k=q->Key; r--;
printf("%d" ,q->No);
}
else
{
for(i=0;i<t-1;i++)
{
q=q->next;
if(q==NULL) return 0;
}
q->next=q->next->next;
q=q->next; k=q->Key; r--;
printf("%d" ,q->No);
}
} //输出函数
请高手帮忙看下哪里出错了???