一个c++程序,我想要把程序输出的结果存入文件中,但是生成的文件只有结果的最后一个数字,前面的都消失了

2024-11-25 10:53:44
推荐回答(2个)
回答1:

main函数中从“ while(T--) ” 开始到最后改成下面样子试试:

ofstream ofs;
ofs.open("c:\\约瑟夫环.txt",ios::app);
ofs<<"输入的次数"< while(T--) {
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<<"输出的结果为"<id;
}

return 0;

}

回答2:

因为你把return 0放在了while循环之内,导致不管输入T为几,都只进行一次就结束了