操作系统之实验二Step1-有序顺序表

                                                                                                                                        实验二Step1-有序顺序表                                                                                    

                                                                                               专业:商业软件工程     班级:商软2班     姓名:甘佳萍     学号:201406114207

实验要求:初始化

              输入数组元素个数。

              输入n个数,排序输出。

              存储结构,排序算法。

              存储结构采取以下图片所示:

              初始化作业后,格式化显示输出,参考下图:

 

 

源程序:

#include<stdio.h>

struct jcb
{ 
    char name[10];           /* 作业名 */  
    char status;              /* 作业状态 */  
    
    int arrtime;                  /* 到达时间 */  
    int startime;                 /* 开始运行时间 */  
    int reqtime;                  /* 要求服务时间 */ 
    int finitime;                 /* 完成时间 */ 
    
    float TAtime,TAWtimei;                   /* 周转时间 */   /* 带权周转时间 */  
    float prio;               //优先权
} jobarr[24],jobfin[24],job[24];//先到先服务,按到达时间来排序
    
void putOutjob(jcb job[],int n);
void OrderByarrtime(int n,jcb job[]);

void main()
{
    int n;
    int systime=0;  
    printf("作业个数:");
    scanf("%d",&n);
    printf("\n");
    for(int i=0;i<n;i++)
    {
        printf("第%d个作业:\n",i+1);
        printf("输入作业名:");
        scanf("%s",job[i].name);
        printf("到达时间:");
        scanf("%d",&job[i].arrtime);
        printf("要求服务时间:");
        scanf("%d",&job[i].reqtime);
        printf("\n");
    }
    OrderByarrtime(n,job);
    putOutjob(job,n);
    printf("                    现在系统时间 0:\n");
}
void putOutjob(jcb job[],int n)
{
    int i;
    printf("经按到达时间排序后,未达到队列是\n       nane           artime         rqtime\n");
    for(i=0;i<n;i++)
    {
        printf("N %d\t%s\t\t%d\t\t%d\n",i+1,job[i].name,job[i].arrtime,job[i].reqtime);
        printf("\n");
        
    }

    printf("\n\n");
}

void OrderByarrtime(int n,jcb job[])
{
    int i,j;
    jcb tmp;
    for(i=0;i<n-1;i++)
        for(j=i+1;j<n;j++)
        {
            tmp=job[i];
            job[i]=job[j];
            job[j]=tmp;
        }
}

运行结果:

 

posted on 2016-04-01 17:34  ganxiaoxiao  阅读(315)  评论(0编辑  收藏  举报

导航