约瑟夫环句子理解
main(){
int i,k,m,n,num[50],*p=num;
printf("\nInput the number of person n=");
scanf("%d",&n);
for(i=0;i<n;i++)
*(p+i)=i+1;
i=0;k=0;m=0;
while(m<n-1)
{
if(*(p+i)!=0) k++;
if(k==3)
{
*(p+i)=0;
k=0;
m++;
}
i++;
if(i==n) i=0;
}
while(*p==0)p++;
printf("the last one is No.%d\n",*p);
}
这几句是什么意思啊想了半天没想通,各位帮说下,感激不尽