用c语言写出首次适应算法
时间: 2023-06-05 11:05:16 浏览: 99
好的,以下是用 C 语言编写的首次适应算法的代码:
```
#include <stdio.h>
#define MAXSIZE 100
int main()
{
int mem_size[MAXSIZE], mem_alloc[MAXSIZE];
int n, m, i, j;
printf("请输入内存块的个数:");
scanf("%d", &n);
printf("请依次输入每个内存块的大小:");
for (i = 0; i < n; i++)
scanf("%d", &mem_size[i]);
printf("请输入作业的个数:");
scanf("%d", &m);
for (i = 0; i < m; i++)
{
int job_size;
printf("请输入第 %d 个作业的大小:", i + 1);
scanf("%d", &job_size);
int min_size = MAXSIZE;
int min_pos = -1;
for (j = 0; j < n; j++)
{
if (mem_alloc[j] == 0 && mem_size[j] >= job_size && mem_size[j] < min_size)
{
min_size = mem_size[j];
min_pos = j;
}
}
if (min_pos == -1)
printf("分配失败!\n");
else
{
printf("作业 %d 分配到了内存块 %d\n", i + 1, min_pos + 1);
mem_alloc[min_pos] = 1;
}
}
return 0;
}
```
阅读全文