#include<iostream>
using namespace std;
int main()
{
int n,start,offset,i=0,count=0;;
cout<<"总数,开始数,偏移数!"<<endl;
cin>>n>>start>>offset;
int *persons=new int[n];
for(int i=0;i<n;i++)persons[i]=0;
start--;
while(1)
{
if(persons[start])start=(start+1)%n;
else
{
cout<<"第"<<start+1<<"个出局"<<endl;
count++;
if(count==n)break;
persons[start]=1;
while(i!=offset)if(!persons[start=(start+1)%n])++i;
i=0;
}
}
system("PAUSE");
return 0;
}
数组实现.....链表实现的,改天补上.