先进先出-FCFS-调度算法-C语言实现
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语言实现相关推荐
- FCFS调度算法与SJF调度算法(C语言实现)
FCFS调度算法的思想就是谁先来就谁先受到服务,这与餐厅排队买饭是一个道理. SJF调度算法是谁的服务时间短谁就先来.(举个例子,一个人山人海的餐厅里,都在那抢饭吃,很混乱,没人排队,谁吃的快谁就先吃 ...
- fcfs调度算法_C / C ++程序用于先到先得(FCFS)调度算法
fcfs调度算法 Here you will get C/C++ program for first come first served (fcfs) scheduling algorithm. 在这 ...
- 操作系统作业调度算法c语言,操作系统课程设计报告电梯调度算法c语言实现.doc...
操作系统课程设计报告电梯调度算法c语言实现 操作系统课程设计报告电梯调度算法c语言实现 :调度 算法 电梯 课程设计 操作系统 操作系统课程设计报告 模拟操作系统课程设计 写一个简单的操作系统 篇一: ...
- fcfs调度算法_FCFS:先来先服务调度算法
fcfs调度算法 The FCFS, which stands for First Come First Serve Scheduling Algorithm, is a non-preemptive ...
- FCFS调度算法(操作系统)先来先服务
FCFS调度算法(FCFS,First Come First Serve) 算法思想: 主要从"公平的角度考虑"(类似于我们生活中排队买东西) 算法规则: 按照作业/进程到达的先后 ...
- C++实现FCFS调度算法
前言 : 最近刚开始学操作系统,刚好要做实验便记录一下实验内容,首先要理解FCFS的基本概念,它是以提交时间为核心的一种调度算法 基本思路: 题目已知提交时间与运行时间要我们得出所有作业的开始.完成. ...
- 先来先服务和高响应比优先调度算法C语言实现
先来先服务和高响应比优先调度算法C语言实现 目录: 1.进程调度与作业调度的区别: 2.单道批处理系统与多道批处理系统的区别: 3.程序设计用到的公式: 4.高响应比优先算法特点: 5.源代码示例: ...
- 作业调度响应比最高c语言实现,高响应比调度算法(c语言程序实现)
<高响应比调度算法(c语言程序实现)>由会员分享,可在线阅读,更多相关<高响应比调度算法(c语言程序实现)(3页珍藏版)>请在人人文库网上搜索. 1.高响应比调度算法#incl ...
- 短作业优先算法c语言实现,OS短作业优先调度算法C语言
OS短作业优先调度算法C语言 采用短作业优先调度算法调度程序 学 号: 姓 名: 专 业: 指导老师: 日 期: 目录 一.实验题目3 二.课程设计的目的3 三.设计内容3 四.设计要求3 五.主要数 ...
- 操作系统:先来先服务调度算法以及短作业优先调度算法C语言实现
FCFS(先来先服务)和SJF(短作业优先)调度算法 先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度,也可用于进程调度.当在作业调度中采用该算法时,每次调度都是从后备作业 ...
最新文章
- handle句柄 matlab_学习随笔之Matlab句柄对象深拷贝方法
- 智能合约遇到的三个大坑
- 坚果pro2s7.0.1系统更新截图(订阅号长截图测试)PhotoScape图片编辑器应用
- SqlServer在安装时提示:需要Microsoft.NET Framework 3.5 Service Pack 1 规则失败
- SQLITE_ERROR - table sap_capire_bookshop_books has no column named currency
- js删除数组中的某个对象
- android system.out.println,为什么“System.out.println”在Android中不起作用?
- 电脑桌面计算机软件不见了,电脑桌面图标不见了怎么恢复?
- 使用ensp搭建简单校园网拓扑
- 如何去除U盘文件夹的隐藏属性
- 模拟银行排队叫号机 2011.04.18
- Java实现 蓝桥杯 算法提高 日期计算
- 装linux双系统有什么好处,科学网—Windows和Linux双系统安装教程 - 戴劭勍的博文...
- docker 容器共享数据_如何在Docker容器之间共享数据
- java毕业设计城市猎人户外军品店Mybatis+系统+数据库+调试部署
- 使用kali对同一局域网内的设备进行断网和查看设备图片
- 哪里可以学Java?
- 在 wpf 中使用 main 方法
- 以后再也去不论坛灌水了
- 注册DLL文件命令的使用方法详细说明