以动态链表实现选举问题(5号退出)
//以动态链表实现选举问题(5号退出)#include<stdio.h>
#include<stdlib.h>
typedef struct node* link;
struct node
{
int item;
link next;
};
main(int argc,char *argv[])
{
int i,N=atoi(argv[1]),M=atoi(argv[2]);
link t=(link)malloc(sizeof*t),x=t;
t->item=1;t->next=t;
for(i=2;i<=N;i++)
{
x=(x->next=(link)malloc(sizeof*x));
x->item=i;
x->next=t;
}
while(x!=x->next)
{
for(i=1;i<M;i++)x=x->next;
x->next=x->next->next;N--;
}
printf("%d\n",x->item);
}
//程序运行出现问题,首先就这个程序本身而言我也看不懂... 照书抄的,出来结果也错误了~也不知道错哪儿了