zoukankan      html  css  js  c++  java
  • 操作系统之实验二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("
    ");
        for(int i=0;i<n;i++)
        {
            printf("第%d个作业:
    ",i+1);
            printf("输入作业名:");
            scanf("%s",job[i].name);
            printf("到达时间:");
            scanf("%d",&job[i].arrtime);
            printf("要求服务时间:");
            scanf("%d",&job[i].reqtime);
            printf("
    ");
        }
        OrderByarrtime(n,job);
        putOutjob(job,n);
        printf("                    现在系统时间 0:
    ");
    }
    void putOutjob(jcb job[],int n)
    {
        int i;
        printf("经按到达时间排序后,未达到队列是
           nane           artime         rqtime
    ");
        for(i=0;i<n;i++)
        {
            printf("N %d	%s		%d		%d
    ",i+1,job[i].name,job[i].arrtime,job[i].reqtime);
            printf("
    ");
            
        }
    
        printf("
    
    ");
    }
    
    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;
            }
    }

    运行结果:

  • 相关阅读:
    JQuery:JQuery语法、选择器、事件处理
    循序渐进DB2(第2版)——DBA系统管理、运维与应用案例
    高级进阶DB2(第2版)——内部结构、高级管理与问题诊断
    DB2数据库性能调整和优化(第2版)
    金融工程中的蒙特卡罗方法
    代数学教程
    拓扑线性空间与算子谱理论
    李代数(第2版)
    编程的修炼(中英双语)
    iOS应用开发详解
  • 原文地址:https://www.cnblogs.com/gjpg/p/5345696.html
Copyright © 2011-2022 走看看