📄 word.h
字号:
#include "iostream.h"
#include "stdlib.h"
#define Num 10
#define SIZE 10000;
typedef struct
{
int id;//分区号
int size;//分区大小
int address;//外部标志
int status;//状态标志
//0---〉表示空闲
//1---> 表示使用
}Word;
Word Array[Num];
int b[10];
int Size;
int Number;//总的分区个数
char Info;
void creat()
{
cout<<"请输入内存大小:";
cin>>Size;
}
///插入作业///
void addwork()
{
int job_size,last;
int ID;
cout<<"请输入作业的id号与大小"<<endl;
cin>>ID>>job_size;
for(int i=1;i<=Number;i++)
{
if(Array[i].status==0)
if(job_size<Array[i].size)
{
Array[i].status=1;
last=Array[i].size-job_size;
Array[i].size=job_size;
b[ID]=Array[i].id;
Array[++Number].status=0;
Array[Number].id=Number;
Array[Number].size=last;
Array[Number].address=Array[i].address+Array[i].size;
break;
}
}
}
void recycle()
{
int ID;
cout<<"请输入要回收作业的名字:"<<endl;
cin>>ID;
for(int i=1;i<Number;i++)
if(b[ID]==Array[i].id)
{
Array[i].status=0;
}
}
void run()
{
int i,j,k;
while(1)
{
cout<<"\nc----->创建分区\n";
cout<<"l----->察看分区\n";
cout<<"a----->添加作业\n";
cout<<"r----->回收分区\n";
cout<<"q-----> 退出\n";
cin>>Info;
switch(Info)
{
///创建分区///
case 'c':
cout<<"请输入分区个数!个数需小于"<<Num<<"个:->\n";
cin>>Number;
while(Number>Num)
{
cout<<"请输入分区个数!个数须小于"<<Num<<"个:\n->";
cin>>Number;
}
for(i=1;i<=Number;i++)
{
Array[i].id=i;
Array[i].status=0;
Array[i].size=NULL;
Array[i].address=0;
}
cout<<"请输入分区大小:\n";
for(j=1;j<=Number;j++)
{
cout<<"第"<<j<<"个分区的大小:->\n";
cin>>Array[j].size;
if(Array[j].size+Array[j].address>Size)
{
cout<<"分区错误!请重新输入分区大小:";
cout<<"第"<<j<<"个分区的大小:->\n";
cin>>Array[j].size;
}
if(j<Number)
Array[j+1].address=Array[j].address+Array[j].size;
cout<<"\n";
}
cout<<"创建了"<<Number<<"个分区!\n";
cout<<"========\n";
break;
///查看分区///
case 'l':
cout<<"分区号\t\t分区首地址\t\t分区大小\t\t分区状态\n";
for(k=1;k<=Number;k++)
{
cout<<Array[k].id<<"\t\t"<<Array[k].address;
cout<<"\t\t\t"<<Array[k].size<<"\t\t\t"<<Array[k].status<<"\n";
}
cout<<"========\n";
break;
///添加作业///
case 'a':
addwork();
break;
///回收///
case 'r':
recycle();
break;
///退出///
case 'q':
exit(0);
cout<<"========\n";
break;
default:
cout<<"无效状态!\n";
cout<<"========\n";
break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -