帮忙看下这段问题在哪?我自己看了挺久找不出来

来源:百度知道 编辑:UC知道 时间:2024/06/14 22:53:04
n个人围成1圈,1到3报数,报到3的出去,最后剩下的是几?
main()
{int n,i,t,*p,a[50];
p=a;
scanf("%d",&n);
for(i=1;i<=n;i++)
*(p+i)=i;

for(i=3;n!=1;i+=3,n--)
{ t=i;
if(i<=n)
for(i=t;i<n;i++)
*(p+i)=*(p+i+1);
else
{i=i-n-1;
t=i;
for(i=t;i<n;i++)
*(p+i)=*(p+i+1);}
i=t;

}
printf("%d",*(p+1));
}
开始先按1到n排名,最后剩下的是原来的第几名

我们细看 不过要是就按你这么写在vc 或者tc++上 肯定不行
main的写法 应该这么写
int main(){
.....
return 0;
}

我晕死,这还有算啊, 还二个人嘛。