#include <stdio.h>
struct person
{
int number;
int nextp;
};
int main()
{
struct person link[14];
int i = 0;
int count = 0;
int h = 13;
for( i = 1; i <= 13; i++ ) //将每个人赋值,
{
if( i == 13)
{
link[i].nextp = 1;
}
else
{
link[i].nextp = i+1; //指向下一个人的标志
}
link[i].number = i;
}
printf("\n");
printf("leave number:\n");
while(count < 12)
{
i = 0;
while(i != 3)
{
h = link[h].nextp;
if(link[h].number) //遇到0时,不计数,并指向下一个人
{
i++;
}
}
printf("%4d ",link[h].number);
ink[h].number = 0; //将取过的数的值置0
count++;
}
printf("\nThe last one:\n");
for( i = 1; i <= 13; i++ )
{
if(link[i].number)
{
printf("%3d ",link[i].number); //最后一人的值不为0,其余人为0
}
}
printf("\n");
return 0;
}