调度算法|FCFS算法以及FJF算法实现

【调度算法|FCFS算法以及FJF算法实现】对于作业调度有很多种调度算法,今天就来实现一下两个各个调度算法里面最简单的两个调度算法.先来先服务和短作业优先算法.
本人C语言程序的代码量不是很多,毕竟入门就学的java所以有不完善的地方还请多指教咯.
文本末尾是两个示范输入数据

#include #include #define SIZE 5 voidfcfsSort(); void myFun(int i); struct Job_type { char num; //作业号 int arrival_time; //到达时间 int runtime; //服务时间 int timeStart; //执行时间 int timeFinished; //结束时间 int timeServe; //周转时间 } x,job[SIZE]; /* *load() *加载函数:输入各个作业的作业号,到达时间,运行时间 * */ void load() { int i; printf("\nEnter the Jobs' datas:\n"); for(i=0; ijob[j].arrival_time){ structJob_type temp = job[i]; job[i] = job [j]; job[j] = temp; } } } }/* *shf(int n,int tc) *短作业优先算法 * * */void sjf(int n,int tc)//短作业调度函数 { int i,j,k=n,t=n; if(k==0){ job[0].timeStart = job[0].arrival_time; job[0].timeFinished = job[0].arrival_time + job[0].runtime; job[0].timeServe = job[0].timeFinished - job[0].timeStart; }else{ myFun(tc); } k++; //判断上一个作业结束后在集合里面按时间到达的作业个数 for(i=k; ijob[j].runtime){ structJob_type temp = job[i]; job[i] = job [j]; job[j] = temp; } } } //如果作业伟全部执行完则递归进行程序 if(t


    推荐阅读