问题:给5个进程的到达时间和完成时间,让你按照FCFS求出每个进程的完成时间
freopen是被包含于C标准库头文件<stdio.h>中的一个函数,
用于重定向输入输出流。
该函数可以在不改变代码原貌的情况下改变输入输出环境,
但使用时应当保证流是可靠的
以指定模式重新指定到另一个文件。
模式用于指定新文件的访问方式。
文件输入:freopen(“in.txt”,”r”,stdin);
文件输出:freopen(“out.txt”,”w”,stdout);
#include<bits/stdc++.h>
using namespace std;
const int N=6;
struct node
{
char ch;
int a_time;
int time ;
int f_time;
}ap[N];
bool cmp(node a,node b)
{
return a.a_time<b.a_time;
}
int main()
{
freopen("data.fcfs","r",stdin);
freopen("out.fcfs","w",stdout);
queue<node>q;
for(int i=0;i<5;i++)
{
cin>>ap[i].ch;
cin>>ap[i].a_time>>ap[i].time;
}
sort(ap,ap+5,cmp);
int now = 0;
for(int i=0;i<5;i++)
{
now=max(now,ap[i].a_time);
now+=ap[i].time;
ap[i].f_time=now;
cout<<ap[i].ch<<' '<<ap[i].a_time<<' '<<ap[i].f_time<<endl;
}
return 0;
}