int su=kai; sum=0; for(int i=0;i<num;i++) { if(su<s[i]) s1[i]=s[i]-su; else s1[i]=su-s[i]; su=s[i]; sum+=s1[i]; } for(int i=0;i<num;i++) { printf("\t%d\t\t\t\t\t%d\t\t\n",s[i],s1[i]); } printf("寻道长度:%d\n",sum); avg1=(double)sum/num; printf("平均寻道长度:%.2lf\n",avg1); // printf("%f\n",avg1); arr[0]=avg1; }
时间: 2024-03-04 18:53:35 浏览: 27
aula 1_SumSeriesC++_SUM_
这段代码看起来像是计算磁盘调度算法中的磁头移动距离和平均移动距离的代码,其中变量su代表当前磁头所在的磁道号,s数组存储了磁盘上需要访问的磁道号,num为需要访问的磁道数目。在循环中,如果当前磁头所在的磁道号小于下一个需要访问的磁道号,则计算它们之间的距离;否则,计算下一个磁道号和当前磁头所在磁道号之间的距离。最终,将所有距离累加起来,求出磁头移动距离sum和平均移动距离avg1,并将avg1存入数组arr中的第一个元素。
阅读全文