笔记:思路
#include<stdio.h>
int main()
{
	int n, k, m, i, j;
	int cnt1, cnt2=1; 
//cnt1表示还在圈内的人数 ,cnt2表示报数的人数 
	int a[100];
	scanf ("%d%d%d", &n, &k, &m);
	cnt1=n;
	for ( i=0; i<n; i++ ) {
		a[i]=1;  //1表示还在圈内 
	}
	while ( cnt1>1 ) {
//从队中存在的人开始
		if ( a[k]==1 ) {
			while ( cnt2<m ) {
				k=(k+1)%n;  
//存在的人才计数
				if ( a[k]==1 ) {
					cnt2++;
				}
			}
			a[k]=0;
			cnt1--;
			do {
				k=(k+1)%n;
			} while ( a[k]==0 ) ;
//此时k为下一个开始的人
			cnt2=1;
		}
	}
	
	for ( i=0; i<n; i++ ) {
		if ( a[i]==1 ) {
			printf ("%d\n", i);
		}
	}
	
	return 0;
}