学了一年的c,这道题还是不会(sad)
											有n个学生围城一圈,顺序排号,从第1个学生开始报数(从1到3报数),凡报到3的学生退出圈子,到最后只留下一名学生,问最后留下来的是原来第几号学生?
 
										
					
	 程序代码:
程序代码:#include <stdio.h>
#define n 100
int main()
{
    int array[n] = {};
    int quitNum  = 0;
    int nCount   = 0;
    for(int i = 0; quitNum < n - 1; ++i)
    {
        if(i >= n)
            i = 0;
        if(array[i] == 1)
            continue;
        ++nCount;
        if(nCount == 3)
        {
            array[i] = 1;
            nCount = 0;
            ++quitNum;
        }
    }
    
    for(int i = 0; i < n; ++i)
    {
        if(array[i] == 0)
        {
            printf("最后留下来的是原来第%d号学生", i + 1);
            break;
        }
    }
    return 0;
}