c语言问题:全班80人围成一圈循环报数1-2-3-1-2-3...,数到3同学退出圈,问最后哪两位同学留下。用数组和循环。
80个整型的数组默认为0,计数到3则将该数组元素值设置为1,直到最后只剩两个0为止
#include <stdio.h>
int main()
{
int a[80] = {0};
int r = 0;
int s = 0;
int i=0;
while(1)
{
s=0;
for(i=0;i<80;i++)
{
if(a[i] != 1)
{
r++;
if(r%3==0)
{
a[i] = 1;
r=0;
}
else
s++;
}
}
if(s<3)
break;
}
for(i=0;i<80;i++)
if(a[i] == 0)
printf("%d ",i+1);
return 0;
}