关于编译错误
请高手帮我调试一下以下程序,为什么总是出现编译错误#include "stdio.h"
#include "malloc.h"
#include "conio.h"
typedef struct node
{ int No;
struct node* next;
} node,*Link;
/******************** /
/*建立单循环连表 * /
/*******************/
Link CreatRing(int n)
{ int i;
Link head=NULL,tail=NULL;
for(i=1;i<=n;i++)
{if (i==1) head=tail=(Link)malloc(sizeof(node));
else
{ tail.next=(Link)malloc(sizeof(node));
tail=tail.next;
}
tail.NO=i;
tail.next=null;
}
tail.next=head;
return(head);
}
/*删除结点*/
Link Delete(Link s)
{
link p=s;
while(p.next!=s)
p=p.next;
p.next=s.next;
free(s);
return(p.next);
}
void josephu(Link p, int n ,int ,int k)
{ int i,j;
printf("出列的序号为: \n");
for(i=1;i<k;i++)
p=p.next;
for(i=0;i<n,i++)
{ for(j=1;j<m;j++)
p=p.next;
printf("%d,",p.No);
p=Delete(p);
}
printf("\n");
}
void main()
{ int n,m,k;
Link head=NULL;
printf("\n 输入总人数n:");
scanf("%d",&n);
printf("\n 输入起始序号K:");
scanf("%d",&k);
printf("\n 输入M:");
scanf("%d",&m);
head=CreatRing(n);
Josephu(head,n,m,k);
getch();
}