• 计算平均周转


    #include<stdio.h>

    #include<stdlib.h>

    #define N 100

    typedef struct process {

     int time; 

      char name;

     int end;  

     int freetime;  

    int arrivetime;  

     int finish;      

     int turn;        

     double average;   

    }P;

    P a[N],b; int wordtime=0;

    void fcfs(int i,int t,int n) {

     a[0].finish=a[0].arrivetime+a[0].freetime;

     wordtime=a[0].finish;    

    a[0].turn=a[0].time;  

    a[0].average=(float)a[0].turn/a[0].time;

     for(i=1;i<n;i++)//执行  {

      if(a[i].arrivetime<a[i-1].finish)   

    {   

     a[i].finish=a[i-1].finish+a[i].freetime;  

      a[i].turn=a[i].finish-a[i].arrivetime;

      }   else

      {    a[i].finish=a[i].arrivetime+a[i].freetime;

       a[i].turn=a[i].time;

      }      

    a[i].average=(float)a[i].turn/a[i].time;

      wordtime=a[i].finish;  

    }  

    }

    void main() {  int i,j,n,sum=0;  double average=0,turn=0;   

          printf("请输入进程个数: ");

     scanf("%d",&n);

     getchar();

     for(i=0;i<n;i++)  {

        printf("第%d个进程到达时间:",i+1);

      scanf("%d",&a[i].arrivetime);

      printf("第%d个的需要时间 :",i+1);

      scanf("%d",&a[i].time);  

     printf(" ");

      a[i].freetime=a[i].time;

         }

     for(i=0;i<n;i++)  {

      for(j=i+1;j<n;j++)   {

       if(a[j].arrivetime<a[i].arrivetime)    {

        b=a[i];    

     a[i]=a[j];   

      a[j]=b;  

      }  

      else if(a[j].arrivetime==a[i].arrivetime)    {

        if(a[i].time>a[j].time)     {

         b=a[i];

         a[i]=a[j];  

        a[j]=b;   

      }   

     }  

     }  

    }

     fcfs(i,j,n);  

     printf("完成时间 周转时间 带权周转 ");

     for(i=0;i<n;i++)   printf("%d %d %.2f ",a[i].finish,a[i].turn,a[i].average);

          for(i=0;i<n;i++)  {

      turn=turn+(float)a[i].turn;

      average=average+(float)a[i].turn/a[i].time;

     }

     turn=turn/n;

     average=average/n;  

    printf("平均周转     平均带权周转 ");   

      printf("%.2f %.2f ",turn,average);

      }

  • 相关阅读:
    2021年欺骗式防御技术将迎来爆发
    可以简化决策过程的10个大数据源
    “AI+”改变世界!不同领域的5大人工智能趋势
    预测2021: 区块链领域新景观
    后量子时代的密码学
    考试
    进度总结8
    进度总结7
    进度总结6
    进度总结5
  • 原文地址:https://www.cnblogs.com/dachui/p/5592279.html
Copyright © 2020-2023  润新知