一道关于银行家算法(计算机)的问题

来源:百度知道 编辑:UC知道 时间:2024/07/02 01:19:38
# include <studio.h>
int Max[10][10],Available[10];
int Allocation[10][10], Need[10][10];
int isSafe(int m,int n){ //m个进程,n类资源
int work[10],finish[10];
int xulie[10]; //安全序列
int thread=0;
int i,j;
for(i=0;i<n;i++){
work[i]=Available[i];
}
for(i=0;i<m;i++){
finish[i]=0;
}
while(thread<m){
for(i=0;i<m;i++){//每一个进程
if(finish[i]==0){
for(j=0;j<n;j++){// 每一种资源
if(Need[i][j]>work[j]) break; //可利用的资源数是否能满足进程的需要
}
if(j==n){//可利用资源能满足进程的需要
finish[i]=1;
xulie[thread]=i+1; //进程号加入安全序列
thread++;
for(int r=0;r<n;r++) { //work值增加
work[j]+=Allocation[i][j];
}
break;
}//end if
}//end if(finish[i]==0)
}//end for
if(i==m) {//找不到一个进程,它的Need<Work
return 0;//不安全
}
}//end while
printf("存在安全序列,\n");
for(i=0;i<thread;i++) printf("P%d,"

你这段代码有输出,怎么没有包含 stdio.h 头文件,你打错单词了吧
'studio.h' studio是 套件、工作室 的意思吧
应该是包含<stdio.h>,std是‘标准 standard’的缩写,io是 in/out 输出输入。

studio.h 头文件不存在而已~~

你用IDE吗?如果是IDE下写的..根据IDE的编译器来选择头文件啊~

f