当前位置: 首页 > news >正文

免费自助小型网站外贸网站seo优化

免费自助小型网站,外贸网站seo优化,揭阳公司做网站,建设银行通控件网站一、实验目的 了解并掌握作业调度的功能,熟悉并掌握各种作业调度算法。 二、实验内容 模拟实现SJF调度。 设置作业体:作业名,作业的到达时间,服务时间,作业状态(W——等待,R——运行,F——完成)…

一、实验目的

了解并掌握作业调度的功能,熟悉并掌握各种作业调度算法。


二、实验内容

模拟实现SJF调度。

设置作业体:作业名,作业的到达时间,服务时间,作业状态(W——等待,R——运行,F——完成),作业间的链接指针;

作业初始化:由用户输入作业名、服务时间、到达时间进行初始化,同时,初始化作业的状态为W。

显示函数:在作业调度前、调度中和调度后进行显示。

排序函数:对等待状态的作业按照调度算法排序(不同的调度算法排序方式不同),注意考虑到达时间。

调度函数:每次从等待队列队首调度已到达的适合的作业执行,状态变化。当服务结束时,状态变为F。

删除函数:撤销状态为F的作业。


三、实验代码

#include <stdio.h>
#include <stdlib.h>
#include <string.h>#define MAX_JOBS 100
#define NAME_LEN 20typedef struct Job {char name[NAME_LEN];int arrival_time;int service_time;char status;struct Job *next;int completion_time;
} Job;Job *waiting_queue = NULL;
Job *completed_jobs = NULL;
int current_time = 0;void init_job(Job *job, const char *name, int arrival_time, int service_time) {strncpy(job->name, name, NAME_LEN);job->arrival_time = arrival_time;job->service_time = service_time;job->status = 'W';job->next = NULL;job->completion_time = 0;
}void add_job(const char *name, int arrival_time, int service_time) {Job *new_job = (Job *)malloc(sizeof(Job));init_job(new_job, name, arrival_time, service_time);if (waiting_queue == NULL || waiting_queue->arrival_time >= new_job->arrival_time) {new_job->next = waiting_queue;waiting_queue = new_job;} else {Job *temp = waiting_queue;while (temp->next != NULL && temp->next->arrival_time < new_job->arrival_time) {temp = temp->next;}new_job->next = temp->next;temp->next = new_job;}
}void display_jobs() {Job *temp = waiting_queue;printf("当前时间:%d\n", current_time);while (temp != NULL) {printf("Job:%s, 状态:%c\n", temp->name, temp->status);temp = temp->next;}printf("\n");
}void schedule() {while (waiting_queue != NULL) {Job *min_job = NULL;Job *prev_min_job = NULL;Job *temp = waiting_queue;Job *prev_temp = NULL;while (temp != NULL) {if (temp->arrival_time <= current_time) {if (min_job == NULL || temp->service_time < min_job->service_time) {min_job = temp;prev_min_job = prev_temp;}}prev_temp = temp;temp = temp->next;}if (min_job == NULL) {if (waiting_queue != NULL) {current_time = waiting_queue->arrival_time;}continue;}min_job->status = 'R';printf("Job:%s在%d时刻开始\n", min_job->name, current_time);display_jobs();current_time += min_job->service_time;min_job->completion_time = current_time;min_job->status = 'F';printf("Job:%s在%d时刻结束\n", min_job->name, current_time);display_jobs();if (min_job == waiting_queue) {waiting_queue = waiting_queue->next;} else {if (prev_min_job != NULL) {prev_min_job->next = min_job->next;}}min_job->next = completed_jobs;completed_jobs = min_job;}
}void display_turnaround_times() {Job *temp = completed_jobs;printf("\n作业周转时间和带权周转时间:\n");while (temp != NULL) {int turnaround_time = temp->completion_time - temp->arrival_time;float weighted_turnaround_time = (float)turnaround_time / temp->service_time;printf("Job:%s, 完成时间:%d, 周转时间:%d, 带权周转时间:%.2f\n",temp->name, temp->completion_time, turnaround_time, weighted_turnaround_time);temp = temp->next;}
}int main() {int n, arrival_time, service_time;char name[NAME_LEN];printf("输入Job数量: ");scanf("%d", &n);for (int i = 0; i < n; i++) {printf("输入Job%d名称, 到达时间, 服务时间: ", i + 1);scanf("%s %d %d", name, &arrival_time, &service_time);add_job(name, arrival_time, service_time);}printf("\n初始运行队列:\n");display_jobs();printf("\nSJF调度开始运行...\n");schedule();printf("\n所有作业全部完成.\n");display_turnaround_times();return 0;
}

四、实验结果

http://www.15wanjia.com/news/164628.html

相关文章:

  • 网站被同行抄袭怎么办做网站一般需要哪些文件夹
  • 个人网站备案需要什么中山百度推广公司
  • 做网站卖别人的软件可以吗济南全网推广
  • 做贸易的都有什么网站做logo的网站
  • 公司网站页面设计图片好的在线crm系统
  • 教做甜品的网站无锡网站怎么推广效果好
  • tq网站建设上海做外贸网站设计
  • 邯郸网站建设做公司网站开发工具发展史
  • 厦门公司网站设计如何查企业做网站是否备案过
  • 哪个dns访问国外网站上海哪家公司做网站最好
  • 汽车html静态网站wordpress订阅地址
  • 什么网站做招聘比较好wx网站开发
  • 长春昆仑建设股份有限公司网站彩票做网站犯法吗
  • 建设旅游网站的总结古腾堡布局的网站
  • 网站模版化配置网站建设服务属于信息技术服务吗
  • 网站推广公司黄页自建外贸网站
  • 擼擼擼做最好的导航网站网站icp备案需要多久
  • 湖北手机版建站系统信息珠海网站建设托管
  • 设计最好的网站wordpress激活
  • 百货商城自助下单网站动漫制作专业升本
  • php网站开发门槛高吗wordpress 网站访问认证页面
  • 网站开发硬件要求安徽福凯建设集团网站
  • 深圳福田高端网站建设遵义网站搭建公司哪家好
  • 网站制作建做公众号封面的网站
  • 做网站页面遇到的问题网站建设套餐方案
  • 黑龙江省城乡和住房建设厅网站微信公众号小程序助手
  • 不能安装wordpress太原seo网站建设
  • 城建网站论坛 建设WordPress批量修改文章
  • 正规营销型网站建设宜昌哪里有专业做网站的
  • 网站建设价格山东济南兴田德润什么活动无锡网站建设 app