C语言实现的FCFS算法

#include<stdio.h>
#include<stdlib.h>
#define num 20
/*
0 2
3 5
4 4
6 5
8 2
-1 -1
*/
int main(){int a[2][num]={0},i=0,j=0,m,n; // 到达时间与服务时间int name[num];for(i=0;i<num;i++){name[i]=65;}while(1){scanf("%d %d",&a[0][j],&a[1][j]);if(a[0][j]==-1)break;j++;}for(m=0;m<num;m++){name[m] = name[m] + m;}printf("\n");for(m=0;m<j-1;m++){for(n=0;n<j-1-m;n++){if(a[0][n]>a[0][n+1]){  // 短进程int t;t = a[0][n];a[0][n] = a[0][n+1];a[0][n+1] = t;t = a[1][n];a[1][n] = a[1][n+1];a[1][n+1] = t;t = name[n];name[n] = name[n+1];name[n+1] = t;}}}int *arr_fin,*arr_turn;double *arr_rig;arr_fin=(int*)calloc(j-1,sizeof(int));  // 完成时间arr_turn=(int*)calloc(j-1,sizeof(int));  // 周转时间arr_rig=(double*)calloc(j-1,sizeof(double));  // 带权周转时间memset(arr_fin, 0, j-1);memset(arr_turn, 0, j-1);memset(arr_rig, 0.0, j-1);int s = 0;printf("各个作业完成时间为:\n");for(s=0;s<j;s++){printf("\t%c", name[s]);}printf("\n");for(s=0;s<j;s++){if(s==0)arr_fin[s] = arr_fin[s] + a[1][s] + a[0][s];  // 加入a[0][0]目的防止进入时间不对else{if(arr_fin[s-1]<a[0][s])arr_fin[s] = a[0][s] + a[1][s];else if(arr_fin[s-1]>=a[0][s])arr_fin[s] = arr_fin[s-1] + a[1][s];}printf("\t%d",arr_fin[s]);}printf("\n");printf("各个作业周转时间为:\n");for(s=0;s<j;s++){arr_turn[s] = arr_fin[s] - a[0][s];printf("\t%d",arr_turn[s]);}printf("\n");printf("各个作业带权周转时间为:\n");for(s=0;s<j;s++){arr_rig[s] = arr_turn[s]*1.0/a[1][s];printf("\t%0.3lf",arr_rig[s]);}return 0;
}
  • 注:不包括同时到达情况

先进先出-FCFS-调度算法-C语言实现相关推荐

  1. FCFS调度算法与SJF调度算法(C语言实现)

    FCFS调度算法的思想就是谁先来就谁先受到服务,这与餐厅排队买饭是一个道理. SJF调度算法是谁的服务时间短谁就先来.(举个例子,一个人山人海的餐厅里,都在那抢饭吃,很混乱,没人排队,谁吃的快谁就先吃 ...

  2. fcfs调度算法_C / C ++程序用于先到先得(FCFS)调度算法

    fcfs调度算法 Here you will get C/C++ program for first come first served (fcfs) scheduling algorithm. 在这 ...

  3. 操作系统作业调度算法c语言,操作系统课程设计报告电梯调度算法c语言实现.doc...

    操作系统课程设计报告电梯调度算法c语言实现 操作系统课程设计报告电梯调度算法c语言实现 :调度 算法 电梯 课程设计 操作系统 操作系统课程设计报告 模拟操作系统课程设计 写一个简单的操作系统 篇一: ...

  4. fcfs调度算法_FCFS:先来先服务调度算法

    fcfs调度算法 The FCFS, which stands for First Come First Serve Scheduling Algorithm, is a non-preemptive ...

  5. FCFS调度算法(操作系统)先来先服务

    FCFS调度算法(FCFS,First Come First Serve) 算法思想: 主要从"公平的角度考虑"(类似于我们生活中排队买东西) 算法规则: 按照作业/进程到达的先后 ...

  6. C++实现FCFS调度算法

    前言 : 最近刚开始学操作系统,刚好要做实验便记录一下实验内容,首先要理解FCFS的基本概念,它是以提交时间为核心的一种调度算法 基本思路: 题目已知提交时间与运行时间要我们得出所有作业的开始.完成. ...

  7. 先来先服务和高响应比优先调度算法C语言实现

    先来先服务和高响应比优先调度算法C语言实现 目录: 1.进程调度与作业调度的区别: 2.单道批处理系统与多道批处理系统的区别: 3.程序设计用到的公式: 4.高响应比优先算法特点: 5.源代码示例: ...

  8. 作业调度响应比最高c语言实现,高响应比调度算法(c语言程序实现)

    <高响应比调度算法(c语言程序实现)>由会员分享,可在线阅读,更多相关<高响应比调度算法(c语言程序实现)(3页珍藏版)>请在人人文库网上搜索. 1.高响应比调度算法#incl ...

  9. 短作业优先算法c语言实现,OS短作业优先调度算法C语言

    OS短作业优先调度算法C语言 采用短作业优先调度算法调度程序 学 号: 姓 名: 专 业: 指导老师: 日 期: 目录 一.实验题目3 二.课程设计的目的3 三.设计内容3 四.设计要求3 五.主要数 ...

  10. 操作系统:先来先服务调度算法以及短作业优先调度算法C语言实现

    FCFS(先来先服务)和SJF(短作业优先)调度算法 先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度,也可用于进程调度.当在作业调度中采用该算法时,每次调度都是从后备作业 ...

最新文章

  1. handle句柄 matlab_学习随笔之Matlab句柄对象深拷贝方法
  2. 智能合约遇到的三个大坑
  3. 坚果pro2s7.0.1系统更新截图(订阅号长截图测试)PhotoScape图片编辑器应用
  4. SqlServer在安装时提示:需要Microsoft.NET Framework 3.5 Service Pack 1 规则失败
  5. SQLITE_ERROR - table sap_capire_bookshop_books has no column named currency
  6. js删除数组中的某个对象
  7. android system.out.println,为什么“System.out.println”在Android中不起作用?
  8. 电脑桌面计算机软件不见了,电脑桌面图标不见了怎么恢复?
  9. 使用ensp搭建简单校园网拓扑
  10. 如何去除U盘文件夹的隐藏属性
  11. 模拟银行排队叫号机 2011.04.18
  12. Java实现 蓝桥杯 算法提高 日期计算
  13. 装linux双系统有什么好处,科学网—Windows和Linux双系统安装教程 - 戴劭勍的博文...
  14. docker 容器共享数据_如何在Docker容器之间共享数据
  15. java毕业设计城市猎人户外军品店Mybatis+系统+数据库+调试部署
  16. 使用kali对同一局域网内的设备进行断网和查看设备图片
  17. 哪里可以学Java?
  18. 在 wpf 中使用 main 方法
  19. 以后再也去不论坛灌水了
  20. 注册DLL文件命令的使用方法详细说明

热门文章

  1. 小米商业产品部第二届Hackathon大赛回顾
  2. python雨流计数sql实现
  3. linux 查看(统计)文件字数、行数;查看文件具体内容
  4. 矩阵向量求导 (转载与整理)
  5. 微信小程序我在校园打卡微信小程序设计与实现(含论文)
  6. 安装CUDA11.2失败
  7. Java - 校园类型系统班级升年级
  8. 树莓派魔镜MagicMirror —— 8 MagicMirror基本模块设计
  9. Java泛型通配符的使用
  10. android屏幕灯光app,屏幕边缘LED灯光