第一次用循环链表,输入之后没有结果,程序直接结束,求解答一下是什么问题
#include<iostream>
#include<algorithm>
using namespace std;
const int maxn = 100 + 5;
typedef struct People
{
int date;
People* next;
}peo;
peo* people[maxn];
int main()
{
int n = 0, m = 0;
cin>>n>>m;
people[maxn]= (peo*)malloc(maxn*sizeof(peo));
for(int i = 1; i < n; i++)
{
if(!people[i]){
exit(0);
}
people[i]->date = i;
people[i]->next = people[i + 1];
}
people[n]->date = n;
people[n]->next = people[1];
struct People *head,*pre;
head = (peo*)malloc(sizeof(peo));
pre = (peo*)malloc(sizeof(peo));
pre = people[n];
head = people[1];
int number = 0;
while(n>1)
{
number++;
if(number%m == 0)
{
printf("%d ",head->date );
pre->next = head->next;
head = head->next ;
}
else
{
pre = pre->next ;
head = head->next ;
}
n--;
}
printf("%d\n",head->next );
}