1.程序编写
#include<stdio.h>
const int len = 13;
void output(int *p)
{
int i;
for (i = 0; i < len && p[i] == 0; i++);//;表示是0的值执行空语句。
printf("剩下的人是:%d\n", p[i]);
}
int find(int *p, int pos, int num)
{
int count = 0;
while (1)
{
if (p[pos] != 0)
{
count++;
if (num == count)
{
break;
}
}
pos++;
if (pos >= len)pos = 0;
}
return pos;
}
int main()
{
int a[len] = { 1,2,3,4,5,6,7,8,9,10,11,12,13 };
for (int i = 0; i < len; i++)
{
a[i] = i + 1;
}
int pos = 0;
for (int i = 0; i < len - 1; i++)
{
pos = find(a, pos, 3);//从pos开始找含pos的非零数
a[pos] = 0;//1循环到3时,到3将pos下标下的数值值置为零
}
output(a);
return 0;
}