virtual.. 2017-09-04 15:05 采纳率: 50%
浏览 299
已结题

这个函数运行时没问题,运行完了却会在其他的地方出问题?是怎么回事?

start()函数,我注释掉它没有
原函数,源代码如下:
bool MainWindow::start() //模型,即产生0到总人数的随机数,其中白岗的数是有规律的
{
//三连连值日模型中,3个白岗,6个夜岗,班长不占白岗
int zongshu = specialgeshu+commongeshu;
int rand;
int a=0;//3
int b=0;//6
int TT=T;
QTime time = QTime::currentTime(); //获取当前时间
qsrand((time.msec()+time.second()*100000));
jieguo jieguotemp;
while(TT)
{
int base=(T-TT)*zongshu;
for(int i=0;i {
while(a {
if(b0) break;
if(i!=commongeshu-1)
{
rand=i + qrand() % ((commongeshu-1) - i);
}
if(i==commongeshu-1) rand=i;
jieguotemp = Jieguo[rand+base];
Jieguo[rand+base]=Jieguo[i+base];
Jieguo[i+base]=jieguotemp;
common[jieguotemp.number].isok=1;
common[jieguotemp.number].finished++;
common[jieguotemp.number].Wfinished++;
a++;
i++;
}
if(i!=zongshu)
{
a=0;
}
while(b<=5 && i<zongshu)
{
if(i!=zongshu-1)
{
rand= i + qrand() % ((zongshu-1) - i);
}
if(i==zongshu-1) rand=i;
jieguotemp = Jieguo[rand+base];
common[jieguotemp.number].isok=1;
common[jieguotemp.number].finished++;
common[jieguotemp.number].Bfinished++;
Jieguo[rand+base]=Jieguo[i+base];
Jieguo[i+base]=jieguotemp;
b++;i++;
}
if(i!=zongshu)
{
b=0;
}
}
TT--;
refasle();
}
// savejieguo();
return 1;
}

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥15 安卓adb backup备份应用数据失败
    • ¥15 eclipse运行项目时遇到的问题
    • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
    • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
    • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
    • ¥50 成都蓉城足球俱乐部小程序抢票
    • ¥15 yolov7训练自己的数据集
    • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
    • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
    • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)