[讨论]评价一下这个算法啊
10个人围成一个圈,从第1个人开始数,数到第6个人,该第6个人出圈,然后从下一个人开始继续数到6出圈,循环出圈直到剩下最后一个人为胜者。#include "stdio.h"
void main()
{
char n[50][50];
int m,j,i,k,l,h;
printf("请输入参加游戏的人数:");
scanf("%d",&m);
for(i=0;i<m;i++)
{
fflush(stdin);
printf("\n第%d个人的姓名:",i+1);
gets(n[i]);
}
printf("\n请输入出圈基数(即数到第几个人出圈):");
scanf("%d",&j);
h=j;
for(i=1,k=m;i<m;i++,h+=j)
{
h=(h-1)%(k-i+1);
printf("第%d个出圈的是:%s\n",i,n[h]);
for(l=h;l<m;l++)
{
n[l]=n[l+1];
}
}
printf("\n最后剩下的是:%s\n",n[0]);
}