#include<stdio.h>
#define Time int
#define M 100
typedef struct process{
char name[M];//进程名
int priority;//优先数
int reachtime;//到达时间
int needtime;//需要时间
int usedtime;//已用时间
char state;//进程状态
}PCB; //进程控制块
int n;
PCB pcb[M];
int pTime;
void print(int n){
int i;
printf("########################进程调度########################
");
printf("-----------------------------------------------------------
");
printf("进程名 需要时间 到达时间
");
for(i=0;i<n;i++){
printf("%1s%12d%12d
",pcb[i].name,pcb[i].needtime,pcb[i].reachtime);
}
}
void main(){
int i;
int j;
PCB temp;
printf("
请输入进程数:");
scanf("%d",&n);
for(i=0;i<n;i++){
printf("
请输入进程名:");
scanf("%s",&pcb[i].name);
printf("请输入需要的时间:");
scanf("%d",&pcb[i].needtime);
printf("请输入到达的时间:");
scanf("%d",&pcb[i].reachtime);
}
for(i=0;i<n;i++)
for(j=i;j<n;j++)
if(pcb[j].reachtime<pcb[i].reachtime)
{
temp=pcb[j];
pcb[j]=pcb[i];
pcb[i]=temp;
}
print(n);
}