怎么改进 for(int i=0; i<n; i++) { cout << "作业" << sort_queue[i].name << "-->"; } cout << "over"; cout << "进程完成后具体信息记录:" << endl; cout << "进程\t到达时间\t服务时间\t周转时间\t" << endl; for(int i=0; i<n; i++) { out(temp[i]); ave_aroundtime += temp[i].aroundtime; ave_weight_aroundtime += temp[i].weight_aroundtime; } ave_aroundtime/=n; ave_weight_aroundtime/=n;
时间: 2024-01-05 12:02:54 浏览: 74
可以将输出部分的代码封装成一个函数,以提高代码的可读性和模块化程度。同时,在输出时可以使用格式化输出来使输出更加美观。
例如,可以定义一个名为print_jobs_info的函数,用于输出作业信息和进程完成后的具体信息记录。函数的参数为作业队列sort_queue和已完成的进程信息数组temp。
在函数内部,可以先输出作业队列的信息,然后再输出进程完成后的具体信息记录。具体信息记录的输出可以使用格式化输出,使得每个字段的输出对齐,更加美观。最后,在函数中计算平均周转时间和加权平均周转时间。
修改后的代码如下:
```
void print_jobs_info(const vector<Job>& sort_queue, const vector<Process>& temp)
{
cout << "作业队列:" << endl;
for (int i = 0; i < sort_queue.size(); i++) {
cout << "作业" << sort_queue[i].name << "-->";
}
cout << "over" << endl;
cout << "进程完成后具体信息记录:" << endl;
cout << left << setw(8) << "进程" << setw(12) << "到达时间" << setw(12) << "服务时间" << setw(12) << "周转时间" << endl;
for (int i = 0; i < temp.size(); i++) {
out(temp[i]);
ave_aroundtime += temp[i].aroundtime;
ave_weight_aroundtime += temp[i].weight_aroundtime;
}
ave_aroundtime /= temp.size();
ave_weight_aroundtime /= temp.size();
}
```
阅读全文