2022年2022年进程调度算法C语言 .pdf
《2022年2022年进程调度算法C语言 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年进程调度算法C语言 .pdf(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、#include #include struct process char pname; float arrivetime; float servetime; float finishtime; float roundtime; float droundtime; float waittime; float yxq; /优先权; struct process pro100; / 声明函数void fcfs(struct process pro,int n); void sjf(struct process pro,int n); void gxyb(struct process pro,int
2、 n); struct process *sortarrivetime(struct process pro,int n); void print(struct process pro,int n); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 10 页 - - - - - - - - - / 主函数void main() int n,i; printf(请输入有几个进程:n); scanf(%d,&n); for(i=0;in;i+) fflush(stdin);
3、printf(请输入第 %d个进程名称 (char):n,i+1); scanf(%c,&proi.pname); printf(到达时间 n); scanf(%f,&proi.arrivetime); printf(服务时间 n); scanf(%f,&proi.servetime); fcfs(pro,n); sjf(pro,n); gxyb(pro,n); / 按到达时间进行冒泡法排序名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 10 页 - - - - - -
4、- - - struct process *sortarrivetime(struct process pro,int n) int i,j; struct process itemp; int flag; for(i=1;in;i+) flag=0; for(j=0;jproj+1.arrivetime) itemp=proj; proj=proj+1; proj+1=itemp; flag=1; /交换标志 if(flag=0) /如果一趟排序中没发生任何交换,则排序结束 break; return pro; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - -
5、 - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 10 页 - - - - - - - - - / 算平均数 +输出函数void print(struct process pro,int n) int i; float Sumroundtime=0,Sumdroundtime=0; float averoundtime,avedroundtime; for(i=0;in;i+)/算平均值 Sumroundtime+=proi.roundtime; Sumdroundtime+=proi.droundtime; averoundtime=Sumround
6、time/n; avedroundtime=Sumdroundtime/n; printf(进程名 t 到达时间 t 服务时间 t 完成时间 t 周转时间 t带全周转 ); for(i=0;in;i+)/输出 printf(%ct%.2ftt%.2ftt%.2ftt%.2ftt%.2fn,proi.pname,proi.arrivetime,proi.servetime,proi.finishtime,proi.roundtime,proi.droundtime); printf(平均值名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -
7、 - 名师精心整理 - - - - - - - 第 4 页,共 10 页 - - - - - - - - - ttttttt%.2ftt%.2fn,averoundtime,avedroundtime); / 先来先服务算法void fcfs(struct process pro,int n) int i; pro=sortarrivetime(pro,n); pro0.finishtime=pro0.arrivetime+pro0.servetime; pro0.roundtime=pro0.finishtime-pro0.arrivetime; pro0.droundtime=pro0.r
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年进程调度算法C语言 2022 进程 调度 算法 语言
限制150内