问题:题目:有n个人围成一圈,顺序排号,从第一个开始报数(从1到3报数),凡报到3的人退出圈子,问最后最后留下的是原来第几号的那位.
问题相关代码,请勿粘贴截图
#include <stdio.h>
int main()
{ int i,j,k=0,l=0,m=0,A[50];
printf("How many ?\n");
scanf("%d",&i);
for(j=0;j<i;j++)
*(A+j)=j+1;
while(m<i-1)
{if(A[l]!=0) k++;
if(k%3==0)
{A[l]=0;
k=0;
m++;}
l++;
if(l==i) l=0;
}
while(A[l]==0) l++;
printf("%d",A[l]);
return 0;
}