- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
FCFSSJF进程调度算法实现C代码
#includeiostream.h
#define M 100
int i;
int j;
int process_number;//进程个数
char process_name[M];//进程名
int arrival_time[M];//到达时间
int start_time[M];//开始执行时间
int services_time[M];//服务时间
int completion_time[M];//完成时间
int turn_arround_time[M];//周转时间
double right_turn_arround_time[M];//带权周转时间
int a[M];
int b[M];
int c[M];
int d[M];
int exchange;
char temp;
void FCFS();
void SJF();
//先来先服务调度算法
void FCFS
{
cout----先来先服务调度算法(FCFS)----endl;
cout请输入进程数: endl;
cinprocess_number;
cout请输入进程名 进程到达时间 进程服务时间(输入q结束):
endl;
for(i=0;iprocess_number+1;i++)
{
cinprocess_name[i];
if(process_name[i]==q)
{
break;
}
cinarrival_time[i];
cinservices_time[i];
}
cout进程名 到达时间 服务时间 开始执行时间
完成时间 周转时间 带权周转时间endl;
for(i=0;iprocess_number;i++)
{
a[i]=arrival_time[i];//把到达时间赋值给a数组
}
for(i=1;iprocess_number-1;i++)//实现第1位按从小到大排序
{
for(j=i+1;jprocess_number;j++)
{
if(a[i]a[j])//比较到达时间的长短,先执行最先到达的进程
{
exchange=a[i];
a[i]=a[j];
a[j]=exchange;
exchange=process_name[i];
process_name[i]=process_name[j];
process_name[j]=exchange;
}
}
}
for(i=1;iprocess_number;i++)//获得数组下标
{
for(j=1;jprocess_number;j++)
{
if(a[i]==arrival_time[j])
{
b[i]=j;
break;
}
}
}
b[0]=arrival_time[0];
for(i=1;iprocess_number;i++)
{
start_time[b[0]]=a[0];
start_time[b[i]]=services_time[b[i]-1]+start_time[b[i]-1];//开
始执行时间
}
for(i=1;iprocess_number;i++)
{
completion_time[b[0]]=services_time[0];
completion_time[b[i]]=services_time[b[i]]+start_time[b[i]];
}
for(i=0;iprocess_number;i++)//周转时间
{
turn_around_time[b[i]]=completion_time
您可能关注的文档
- 【二级建造师考试市政实务资料】模拟题(2010二级)1.doc
- 【交通部试验检测人员考试小抄】交通工程.doc
- 【交通部试验检测人员考试辅导资料】2011年检测试验考试小抄题2.doc
- 【交通部试验检测人员考试辅导资料】2011年试验检测考试小抄题1.doc
- 【交通部试验检测工程师考试辅导资料】桥梁检测师备考复习题一(选择题).doc
- 【交通部试验检测工程师考试辅导资料】桥梁检测师备考复习题三(问答题).doc
- 【交通部试验检测人员考试辅导资料】材料及地基最新整理水运材料及地基操作题.doc
- 【交通部试验检测工程师考试辅导资料】桥梁检测师备考复习题二(判断题).doc
- 【储蓄所装饰工程】07-第五章 工期及施工进度计划.doc
- 【停车技巧】给您介绍点儿有用的 十二条停车技巧详解.doc
文档评论(0)