main函数中从“ while(T--) ” 开始到最后改成下面样子试试:
ofstream ofs;
ofs.open("c:\\约瑟夫环.txt",ios::app);
ofs<<"输入的次数"<
cin >> n >> m;
KidCircle *kc = new KidCircle(n); /// n 个王子的围成的圈
int tempNum = 0;
Kid *k = kc->first; /// 王子
while(kc->temp > 1) { /// 圈子中剩下的王子大于 1
tempNum++;
if(tempNum == m) {
tempNum = 0;
cout << k->id << ' ';
kc->del(k);
}
k = k->right;
}
cout << k->id << endl;
ofs<<"输出的结果为"<
}
return 0;
}
因为你把return 0放在了while循环之内,导致不管输入T为几,都只进行一次就结束了