南京师范大学2003-2011地理信息系统考研专业一试题(4)

本站小编 免费考研网/2015-08-16


        j++;
    }
    if(p==L)
        return ERROR;
    *e = p->data;
    p->prior->next = p->next;
    p->next->prior = p->prior;
    free(p);
    return OK;
}

void print(DuLinkList L)
{
    DuLNode *p;
    p = L->next;
    while(p!=L)
    {
        printf("%d ",p->data);
        p = p->next;
    }
    printf("\n");
}

void main()
{
    int i;
    ElemType e;
    DuLinkList L;
    if(!(L=(DuLNode *)malloc(sizeof(DuLNode))))
        exit(0);
    L->next = L;
    L->prior = L;
    for(i=1;i<10;i++)
    {
        e = (ElemType)i;
        if(!(ListInsert_DuL(L,i,e)))
            printf("No.%d is wrong!\n",i);
    }
    print(L);
    ListInsert_DuL(L,5,(ElemType)10);
    print(L);
    ListDelete_DuL(L,1,&e);
    print(L);
    printf("please input a number:");
    scanf("%d",&i);
    if(GetElem_DuL(L,i,&e))
        printf("L[%d]=%d\n",i,e);
    else
        printf("%d is illegal!\n",i);
}

7、编制一个程序以模拟银行窗口接待客户的排队业务活动(每个窗口在某个时刻只能接待
一个客户;窗口空闲,则可上前办理业务;窗口均被占,则新客户便会排在人数最少的队伍
前面),并计算一天中客户在银行逗留的平均时间。(本题20分)

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define MAX 10000
#define OK 1
#define ERROR 0
/**********数据类型定义(Start)**********/
typedef int Status;

typedef struct
{
    int OccurTime;             //事件发生时刻
    int NType;                 //事件类型,0~5
}Event,ElemType;               //事件类型,有序链表LinkList的数据元素类型

typedef struct LNode
{
    ElemType data;
    struct LNode *next;
}LNode,*LinkList;

typedef LinkList EventList;    //事件链表类型,定义为有序链表

typedef struct
{
    int ArrivalTime;           //到达时间
    int Duration;              //办理事务所需时间
}QElemType;                    //队列的数据元素类型

typedef struct QNode
{
    QElemType data;
    struct QNode *next;
}QNode,*QueuePtr;

typedef struct
{
    QueuePtr front;
    QueuePtr rear;
}LinkQueue;

/**********数据类型定义(Over)**********/

/**********程序中用到的主要变量(Start)**********/
EventList ev;                  //事件表
Event en;                      //事件
LinkQueue q[5];                //4个客户队列
QElemType customer;            //客户记录
long TotalTime,CustomerNum;     //累计客户逗留时间,客户数
/**********程序中用到的主要变量(Over)**********/

/**********自定义函数部分(Start)**********/
/****链表操作部分(start)****/
int cmp(ElemType a,ElemType b)
{
    if(a.OccurTime>b.OccurTime)
        return 1;
    else if(a.OccurTime==b.OccurTime)
        return 0;
    else
        return -1;
}

void InitList(LinkList &L)
{
    L = (LNode *)malloc(sizeof(LNode));
    if(!L)
        printf("EVENTLIST INIT ERROR!\n");
    else
    {
        L->next = NULL;
    }
}

void OrderInsert(LinkList L,ElemType en)
{
    LNode *p,*q,*s;
    p = L;
    q = p->next;
    while(q && (cmp(q->data,en)==-1))
    {
        p = q;
        q = p->next;
    }
    s = (LNode *)malloc(sizeof(LNode));
    s->data.OccurTime = en.OccurTime;
    s->data.NType = en.NType;
    p->next = s;
    s->next = q;
}

int ListEmpty(LinkList L)
{
    if(L->next!=NULL)
        return 0;
    else
        return 1;
}

void DelFirst(LinkList L,ElemType *e)
{
    LNode *p;
    p = L->next;
    L->next = p->next;
    e->OccurTime = p->data.OccurTime;
    e->NType = p->data.NType;
    free(p);
}

/****链表操作部分(over)****/

/****队列操作部分(start)****/
void InitQueue(LinkQueue *Q)
{
    Q->front = Q->rear = (QNode *)malloc(sizeof(QNode));
    if(!(Q->front))
        printf("LinkQueue INIT ERROR!\n");
    Q->front->next = NULL;
}




Status DelQueue(LinkQueue *Q,QElemType *e)
{
    QNode *p;
    if(Q->front==Q->rear) return ERROR;
    p = Q->front->next;
    e->ArrivalTime = p->data.ArrivalTime;
    e->Duration = p->data.Duration;
    Q->front->next = p->next;
    if(Q->rear == p) Q->rear = Q->front;
    free(p);
    return OK;
}


Status EnQueue(LinkQueue *Q,QElemType e)
{
    QNode *p;
    p = (QNode *)malloc(sizeof(QNode));
    if(!p) exit(0);
    p->data.ArrivalTime = e.ArrivalTime;
    p->data.Duration = e.Duration;
    p->next = NULL;
    Q->rear->next = p;
    Q->rear = p;
    return OK;

}

int QueueLength(LinkQueue *Q)
{
    int i=0;
    QNode *p;
    if(Q->front==Q->rear)   i = 0;
    else
    {
        p = Q->front;
        while(p!=Q->rear)
        {
            p = p->next;
            i++;
        }
    }
    return i;
}
/****队列操作部分(over)****/

/****业务操作部分(start)****/
void Random(long *durtime,long *intertime)
{
    srand(time(NULL));
    *durtime = rand();
    *intertime = rand();
}

int Minimum(LinkQueue q[])
{
    int i,j,k=0,min = MAX;
    QNode *p;
    for(i=1;i<=4;i++)
    {
        if(q[i].front == q[i].rear)

相关话题/地理

  • 领限时大额优惠券,享本站正版考研考试资料!
    大额优惠券
    优惠券领取后72小时内有效,10万种最新考研考试考证类电子打印资料任你选。涵盖全国500余所院校考研专业课、200多种职业资格考试、1100多种经典教材,产品类型包含电子书、题库、全套资料以及视频,无论您是考研复习、考证刷题,还是考前冲刺等,不同类型的产品可满足您学习上的不同需求。 ...
    本站小编 Free壹佰分学习网 2022-09-19
  • 2001-2008年西南大学人文地理学考研真题
    2001年人文地理学 一、 名词解释(15) 1、中东 2、地理大发现 3、大洋洲 4、尼罗河 5、巴黎盆地 二、 简述题(20) 1、世界地理环境结构的地域分异规律 2、战后科技革命对世界经济发展和产业分布的影响 三、 填图题(图) 在图上填出(15) 1、统一后的德国国界和国名(1) ...
    本站小编 免费考研网 2015-08-09
  • 华南师范大学人文地理学2002-2011历年考研真题(附答案)
    华南师范 大学 2011 硕士 研究生招生入学考试试卷 人文地理学 一、名词解释(每题 5 分,共 30 分) 1、因子生态分析法 2、容积率和建筑密度 3、城市发展的经济基础原理 4、产业集群 5、集聚与扩散 6、旅游规划 二、简答题(70 分) 1、请简述我国的区域空间规划体系。(15 分) ...
    本站小编 免费考研网 2015-07-22
  • 湖南师范大学经济地理学复试资料(整合)
    第一章 绪论 何谓经济地理学? 答:经济地理学是研究经济活动区位、空间组织及其地理环境相关系的学科。 试述经济地理学的研究对象。 答:经济地理学的研究对象包括:经济活动的内容、区位、空间 ...
    本站小编 免费考研网 2015-07-22
  • 2013年兰州大学818现代地理学(含自然地理学、经济地理学)+考研试题(回忆版)
    2013年兰州大学818现代地理学(现代地理学(含自然地理学、含自然地理学、经济 地理学) 地理学) 考研试题) 考研试题(考研试题(回忆版)回忆版) 一、名词解释(每题6分) 1、不整合 2、干洁空气 3、锋 4、雪线 5、黄土 6、土壤质地 7、生态系统 8、隐域性 二、简答题(每题8分) 1、岩石的结构与构造 2、沉积岩的基本 ...
    本站小编 网络资源 2015-07-16
  • 人文地理学 赵荣等 高等教育出版社(答案)
    第一章 绪论 1、 人文地理学在地理学中的地位和作用。 人文地理学是以人地关系的理论为基础,探讨各种人文现象的地理分布、扩散和变化,以及人类社会活动的地域结构的形成和发展规律的一门学科。又称人生地理学。它是地理学的两个主要分支学科之一,人文二字与自然地理学的自然二字相对应 ...
    本站小编 免费考研网 2015-07-16
  • 西北大学2015中国历史地理学考题
    西北大学2015中国历史地理学考题 一、名词解释 沿革地理学 地理环境决定论 新秦中 陈桥驿 统万城 关西和关东 二、简答题 1、简述中国历史时期人口变化特点及其影响。 2、简述毛乌素沙漠的形成原因。 3、简述中国历史上东西对峙的原因。 三、论述题 1、论述中国历史时期气候变迁及其影响。 2、论述安阳成为中国七大古都 ...
    本站小编 网络资源 2015-07-15
  • 西北师范大学2011年,2012年自然地理试题
    2010 一名词解释 1沉积建造 2米兰科维奇理论 3水分循环 4土壤肥力 5趋同适应 6洪积扇 7正断层 8海陆风 二简答题 1分析气候与生物对土壤形成的作用与影响 2简要分析我国西北干旱气候的形成原因. 3分析对比准平原和山麓面的形成过程. 4简述农业生态系统的特点. 5简述冰川对地理环境的影响 6简要分析地球自转的 ...
    本站小编 免费考研网 2015-07-01
  • 中科院寒旱所2007-1997硕士入学考试真题 [自然地理]
    自然地理学 1997年硕士研究生入学考试题 一、名词解释 1、沉积相与沉积韵律 2、气旋与反气旋 3、土壤与土地 4、径流系数与径流模数(写出单位) 5、生物群落与生态系统 二、回答问题 1、 季风环流是怎样形成的?简述热带季风气候、副热带季风气候和温带季风气候各自发育的区域和气候特点。(13分) 2、 自然带在空间 ...
    本站小编 免费考研网 2015-07-01
  • 中科院寒旱所2006自然地理学考博试题答案
    自然地理学 一、名词解释 1、季风 2、水循环 3、大气环流 4、洋流 5、生态系统 季风:大陆和海洋间的广大地区,以一年为周期、随着季节变化而方向相反的风系,称为季风。季风是海陆间季风环流的简称,它是由大尺度的海洋和大陆间的热力差异形成的大范围热力环流。夏季由海洋吹向大陆的风称为夏季风;冬季由大陆吹向海洋的 ...
    本站小编 免费考研网 2015-07-01
  • 中科院寒旱所考博地理名词解释(答案整理)
    名词解释: 1、季风(monsoon):是由于大陆及邻近海洋之间存在的温度差异而形成大范围盛行的、风向随季节有显著变化的风系,具有这种大气环流特征的风称为季风。 大陆和海洋间的广大地区,以一年为周期、随着季节变化而方向相反的风系,称为季风。季风是海陆间季风环流的简称,它是由大尺度的海洋和大陆间的热力差异形成 ...
    本站小编 免费考研网 2015-07-01