这个程序为什么输出没有结果?a

2025-12-06 11:54:33
推荐回答(2个)
回答1:

在第二个循环里,循环三次后,T=3,于是a[2]=0;T=0;K=1;并且i=2;
这时候a数组为{1,1,0}
i=2 -》 i=0
再往后的循环里,由于a数组只有2个1,所以T将永远小于3;每次i=2以后,i被赋值为0,重新循环。
进入死循环。
所以最后没有结果输出。

回答2:

此题为约瑟夫环问题,主要问题出在if(i==2) i=0;当i=2时i=0,单次循环结束时i=1,所以程序将执行不到a[0],所以K最多是2,不会是3