关闭

FIFO页面置换算法

840人阅读 评论(0) 收藏 举报
#include <stdio.h>
#define n 20
#define m 4
int main()
{
	int ym[n],i,j,q,mem[m]={0},table[m][n];
	char flag,f[n];
	printf("请输入页面访问序列。\n");
	for(i=0;i<n;i++)
		{
			scanf("%d",&ym[i]);
		}
	printf("\n");
	for(i=0;i<n;i++)
		{
			q=0;
			while((ym[i]!=mem[q])&&(q!=m))q++;
			if(q==m)flag='*';
			else flag=' ';
			if(flag=='*')
			{
				for(j=m-1;j>0;j--)
				{
					mem[j]=mem[j-1];
					mem[0]=ym[i];
				}
				for(j=0;j<m;j++)
					talbe[j][i]=mem[j];
				f[i]=flag;
			}
		}
	printf("输出结构为下表(0代表空,×代表有缺页):\n");
	for(i=0;i<m;i++)
		{
			for(j=0;j<n;j++)
				printf("%3d",table[i][j]);
			printf("\n");
		}
	for(i=0;i<n;i++)
		{
			printf("%3c",f[i]);
		}
	return 0;
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:112260次
    • 积分:2947
    • 等级:
    • 排名:第12378名
    • 原创:188篇
    • 转载:5篇
    • 译文:1篇
    • 评论:23条
    博客专栏
    最新评论