資源簡介
本程序是用c++編寫的,實現了操作系統中優先調度算法的基本功能,代碼比較簡單,容易看懂,又很多注釋。
代碼片段和文件信息
#include??
#define?n?3
//int?n;
void?print();//輸出函數
typedef?struct?node
{
????char?Pname[10];//進程名
int?Ptime;//所需時間
int?Pno;?//優先數
char?Status;//進程狀態
struct?node?*next;
}PCB;
PCB?*?in_queue(PCB?*headPCB?*p);?//入隊列函數
PCB?P[n];?//定義n個進程
PCB?*input()?//初始化
{
cout<<“請輸入進程名、運行時間、優先數、狀態:\n“;
PCB?*Qhead;?//定義一個頭指針
Qhead=new?(node);
Qhead=NULL;
for(int?i=0;i {
struct?node?*p;
p=new?(node);
cin>>P[i].Pname;
cin>>P[i].Ptime;
cin>>P[i].Pno;
cin>>P[i].Status;
p->next=NULL;
in_queue(Qheadp);
}
return?Qhead;
}
PCB?*in_queue(PCB?*headPCB?*p)?//入隊列
{
while(head)??//若頭指針不為空則入隊列
{
???p->next=head;
???head=p;
}?
head=p;
p->next=NULL;
return?head;
}
int?Max_priority()?//選擇優先級最大的進程
{
int?Max=P[0].Pno;?//假設第一個進程的優先數最大
for?(int?i=0;i {
if?(Max Max=P[i].Pno?;??//找出優先數最大的
}
- 上一篇:C語言課程設計之繁華曲線
- 下一篇:More Effective C++中文完整版
評論
共有 條評論