有n个人围成一圈,顺序编号,从第一个人开始报数,凡报到3的人出圈,编写程序,问最后留下的是原来第几号的那位?
</pre><pre name="code" class="cpp">#include"stdio.h"
int main()
{
int a[100][2];
int i,n;
int index,count;
int temp=1;
printf("please input a number:\n");
scanf("%d",&n);
for(i=0;i<n;i++)
{
a[i][0]=i+1;
a[i][1]=1;
}
index=1;count=n;
while(count!=1)
{
if(a[index][1]==1)
{
temp++;
if(temp==3)
{
temp=1;
a[index][1]=0;
count--;
}
}
index=(index+1)%n;
}
for(i=0;i<n;i++)
printf("%d\t%d\n",a[i][0],a[i][1]);
return 0;
}