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 fluent的在模拟压强时使用希望得到一些建议
    • ¥15 STM32驱动继电器
    • ¥15 Windows server update services
    • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
    • ¥15 模糊pid与pid仿真结果几乎一样
    • ¥15 java的GUI的运用
    • ¥15 Web.config连不上数据库
    • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
    • ¥15 怎么配置广告联盟瀑布流
    • ¥15 Rstudio 保存代码闪退