C循环没有正确格式化数组



所以,我试图从FCFS调度器的Samfoundry修改这段代码。我删除了与周转时间有关的东西,因为我并不真正需要它,并修改了它,以便它可以处理数组内已经存在的元素,而不是用户输入。我认为逻辑是正确的,但格式不是,我真的不知道为什么,即使它几乎与源代码相同。

int main()
{
int pid[5] = {1, 2, 3, 4, 5};
int bt[5] = {5, 3, 1, 2, 3};
int n = 5;

int i, wt[n];
wt[0]=0;

//for calculating waiting time of each process
for(i=1; i<n; i++)
{
wt[i]= bt[i-1]+ wt[i-1];
}

printf("Process ID      Burst Time     Waiting Timen");
float twt=0.0;
for(i=0; i<n; i++)
{
printf("%dtt", pid[i]);
printf("%dtt", bt[i]);
printf("%dtt", wt[i]);

//for calculating total waiting time
twt += wt[i];
}
float awt;

//for calculating average waiting time
awt = twt/n;
printf("nAvg. waiting time= %fn",awt);
}
Expected output: 
ProcessID       BurstTime     WaitingTime
1               5             0
2               3             5
3               1             8
4               2             9
5               1             11

Actual output: 
ProcessID       BurstTime     WaitingTime
1               5               0               2               3               5               3               1               8               4               2               9           5
3               11

在代码中一切都很好,你只需要在for循环中添加一些额外的制表符和新的行字符

printf("%dtttt", pid[i]); //add two more tab spaces
printf("%dtttt", bt[i]); //same as here add two tab spaces
printf("%dttn", wt[i]);  // add a n i.e new line

相关内容

  • 没有找到相关文章

最新更新