满意答案
没有选择_x
2015.12.03
采纳率:58% 等级:9
已帮助:216人
给个你参考哈123456789101112131415161718192021222324252627282930313233void JosephMatrix(int n, int s, int m, int a[]){ int i,j,w; int s1 = s; for(i=0; i=2; i--) { s1 = (s1+m-1)%i; //s1每次出圈人的位置(在去掉出圈人的序列后的下标) if(s1 == 0) //如果s1等于0,则说明要开始报数的人是最后一个人 s1 = i; //把此时变量i的值赋给s1 printf("%d ", s1); w = a[s1-1]; //把每次出圈人的序号赋给w for(j=s1; j= 0; i--) printf("%d ", a[i]); printf("\n");} void main(){ // n 游戏总人数// s 报数的起始编号// m 报数的数值 int a[20], i; int n=12, s=4, m=6; JosephMatrix(n,s,m,a);}
00分享举报