进程调度c语言 fcfs,进程调度算法(fcfs-sjf-gxyb)C语言.doc

#include#include

struct process{?char pname;?float arrivetime;?float servetime;?float finishtime;?float roundtime;?float droundtime;?float waittime;?float yxq;?? //优先权};struct process pro[100];

//声明函数void fcfs(struct process pro[],int n);void sjf(struct process pro[],int n);void gxyb(struct process pro[],int n);struct process *sortarrivetime(struct process pro[],int n);void print(struct process pro[],int n);

?

//主函数void main(){?int n,i;?printf("请输入有几个进程:\n");?scanf("%d",&n);?for(i=0;i

?fcfs(pro,n);?sjf(pro,n);?gxyb(pro,n);}

//按到达时间进行冒泡法排序struct process *sortarrivetime(struct process pro[],int n){?int i,j;?struct process itemp;?int flag;?for(i=1;ipro[j+1].arrivetime)???{????itemp=pro[j];????pro[j]=pro[j+1];????pro[j+1]=itemp;????flag=1;?? //交换标志???}??}??if(flag==0)?? //如果一趟排序中没发生任何交换,则排序结束???break;?}?return pro;}

//算平均数+输出函数void print(struct process pro[],int n){?int i;?float Sumroundtime=0,Sumdroundtime=0;?float averoundtime,avedroundtime;??for(i=0;i

//先来先服务算法void fcfs(struct process pro[],int n){?int i;?pro=sortarrivetime(pro,n);?pro[0].finishtime=pro[0].arrivetime+pro[0].servetime;?pro[0].roundtime=pro[0].finishtime-pro[0].arrivetime;?pro[0].droundtime=pro[0].roundtim

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值