91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 569KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2024-01-26
  • 語言: 其他
  • 標簽: 電梯模擬??

資源簡介

數據結構課程設計時用到的實驗題目2.8電梯模擬C實現

資源截圖

代碼片段和文件信息

/*
?*?elevator.c
?*
?*??Created?on:?2014年6月19日
?*??????Author:?LinBingcheng
?*/
#include?
#include?
#include?
#include?
#include?
#include?“elevator.h“

//////////////////////////////////////////////////////////////////////////
//
//?定義基本外部變量
//
//////////////////////////////////////////////////////////////////////////

int?Start?=?1; //本壘層
int?Limit?=?15;? //電梯的限載
int?Maxfloor?=?4;? //最高處
int?Minfloor?=?0; //最低層

float?t?=?0.1; //單位時間0.1毫秒
int?CloseTime?=?40; //電梯關門測試時間
int?OverTime?=?300; //電梯停候超時時間
int?DoorTime?=?20; //開門關門時間
int?InOutTime?=?25; //進出電梯時間
int?AccelerteTime?=?15; //加速時間
int?UpTime?=?51; //上升時間
int?DownTime?=?61; //下降時間
int?UpDecelerateTime?=?14; //上升減速
int?DownDecelerateTime?=?23; //下降減速

int?InOutCount?=?0; //用于進出計時
int?InterTime?=?0; //下一乘客進入系統的時間

//////////////////////////////////////////////////////////////////////////
//
//?函數實現
//
//////////////////////////////////////////////////////////////////////////

Client?*InitClient()?{
Client?*C?=?(Client*)?malloc(C_LEN);
C->statu?=?New;
if?(!C)?{
exit(OVERFLOW);
}
return?C;
}
Status?DestroyClient(Client?*C)?{
free(C);
return?OK;
}
void?PrintClient(Client?*C)?{
switch?(C->statu)?{
case?New:
printf(“%d號乘客進入第%d號電梯第%d層:目標層為第%d層進入時間為?%.1f?S忍耐時間為?%.1f?S\n“
C->id?C->e_id?C->InFloor?C->OutFloor?C->InterTime?*?t
C->GiveupTime?*?t);
break;
case?GiveUp:
printf(“\t第?%.1f?S?時\t%d號乘客放棄等待第%d號電梯\n“
(C->InterTime??+?C->GiveupTime)?*?t?C->id?C->e_id);
break;
case?Out:
printf(“\t%d號乘客走出第%d號電梯\n“?C->id?C->e_id);
break;
case?In:
printf(“\t%d號乘客走進第%d號電梯,要去第%d層\n“?C->id?C->e_id?C->OutFloor);
break;
default:
break;
};

}
linkQueue?*InitQueue()?{
linkQueue?*Q?=?(linkQueue?*)?malloc(C_Q_LEN);
if?(!Q)?{
exit(OVERFLOW);
}
Q->front?=?Q->rear?=?(QNode?*)?malloc(sizeof(QNode));
if?(!Q->front)?{
exit(OVERFLOW);
}
Q->front->next?=?NULL;
Q->front->data?=?NULL;
return?Q;
}

Status?ClearQueue(linkQueue?*Q)?{
while?(Q->front)?{
Q->rear?=?Q->front->next;
if?(Q->front->data)?{
free(Q->front->data);
free(Q->front);
}?else?{
break;
}
Q->front?=?Q->rear;
}
return?OK;
}

Status?DestroyQueue(linkQueue?*Q)?{
while?(Q->front)?{
Q->rear?=?Q->front->next;
if?(Q->front->data)?{
free(Q->front->data);
free(Q->front);
}?else?{
break;
}
Q->front?=?Q->rear;
}
free(Q);
return?OK;
}
int?QueueLength(linkQueue?*Q)?{
QNode?*qn;
int?length?=?0;
for?(qn?=?Q->front;?qn?!=?Q->rear;?qn?=?qn->next)?{
length++;
}
return?length;
}
QueuePtr?GetHead(linkQueue?*Q)?{
if?(Q->front?==?Q->rear)?{
return?NULL;
}
return?Q->front->next;
}
Status?EnQueue(linkQueue?*Q?QElemType?e)?{
QNode?*p;
p?=?(QNode?*)?malloc(sizeof(QNode));
if?(!p)?{
exit(OVERFLOW);
}
p->data?=?e;
p->next?=?NULL;

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2014-06-26?17:44??elevator_00\
?????文件???????11228??2014-06-20?13:15??elevator_00\.cproject
?????文件?????????789??2014-06-26?16:47??elevator_00\.project
?????目錄???????????0??2014-06-26?16:47??elevator_00\.settings\
?????文件????????1491??2014-06-19?17:24??elevator_00\.settings\org.eclipse.cdt.managedbuilder.core.prefs
?????目錄???????????0??2014-06-27?11:21??elevator_00\Debug\
?????文件??????411167??2014-06-27?09:45??elevator_00\Debug\elevator.o
?????文件??????899821??2014-06-27?11:21??elevator_00\Debug\elevator_00.exe
?????文件??????402652??2014-06-27?11:21??elevator_00\Debug\main.o
?????文件???????11017??2014-06-27?09:13??elevator_00\elevator.c
?????文件????????3936??2014-06-27?09:14??elevator_00\elevator.h
?????文件????????1856??2014-06-27?09:46??elevator_00\main.c

評論

共有 條評論