-
大小: 161KB文件類型: .rar金幣: 2下載: 0 次發(fā)布日期: 2021-06-05
- 語言: 其他
- 標(biāo)簽:
資源簡介
停車場問題求解
停車場問題求解
停車場問題求解
停車場問題求解
停車場問題求解
停車場問題求解
停車場問題求解

代碼片段和文件信息
#include?
#include?
#define?STACK_SIZE?3
enum?boolean{?ERROROVERFLOWOK?};
typedef?unsigned?int?STATUS;
//--------------------------各個結(jié)構(gòu)體定義-----------------------------------------------//
struct?SNode
{
???int?car_num;
???int?arr_time;
};
struct?QNode
{
???int?car_num;
???int?arr_time;
???QNode*?next;
};
struct?Stack
{
???SNode*?base;
???SNode*?top;
???int?stacksize;
};
struct?Queue
{
???QNode*?front;
???QNode*?rear;
};
//---------------------------------結(jié)構(gòu)體Stack操作函數(shù)定義-----------------------------------------//
STATUS?initStack(Stack?&s)
{
???s.base=(SNode*)malloc(STACK_SIZE*sizeof(SNode));
???if(!s.base)?return?ERROR;
???s.top=s.base;
???s.stacksize=STACK_SIZE;
???return?OK;
}
STATUS?push(Stack?&sSNode?&car)
{
???*s.top++=car;
???return?OK;?
}
STATUS?isfull(Stack?&s)
{
???if(s.top-s.base>=s.stacksize)
???return?OK;
???return?ERROR;
}
STATUS?pop(Stack?&sSNode?&car)
{
????if(s.top==s.base)?return?ERROR;
????car=*--s.top;
???return?OK;
}
STATUS?Sisempty(Stack?&s)
{
??if(s.top==s.base)
??return?OK;
??return?ERROR;
}
//-----------------------------------------結(jié)構(gòu)體Queue操作函數(shù)定義--------------------------------------------------//
STATUS?initQueue(Queue?&q)
{
??q.front=q.rear=(QNode*)malloc(sizeof(QNode));
??if(!q.front)?exit(OVERFLOW);
??q.front->next=NULL;
??return?OK;
}
STATUS?enQueue(Queue?&qSNode?&car)
{
??QNode*?qcar?=?(QNode*)malloc(sizeof(QNode));
??if(!qcar)?exit(OVERFLOW);
??qcar->car_num=car.car_num;
??qcar->arr_time=car.arr_time;
??qcar->next=NULL;
??q.rear->next=qcar;
??q.rear?=?qcar;
??return?OK;
}
STATUS?deQueue(Queue?&qSNode?&carint?leav_time)
{
???if(q.front==q.rear)?return?ERROR;
??????car.arr_time?=?leav_time;
??QNode*?temp?=?q.front->next;
??car.car_num?=?temp->car_num;
??q.front->next=temp->next;
??free(temp);
??return?OK;
}
STATUS?Qisempty(Queue?&q)
{
???if(q.front->next==NULL)?return?OK;
???return?ERROR;
}
void?main()
{
??char?firte;
??int?secthi;
??int?fee?=?0;
??struct?SNode?car;
??struct?Stack?box;
??struct?Stack?temp;
??struct?Queue?wait;
??initStack(box);
??initStack(temp);
??initQueue(wait);
??printf(“enter?the?car‘s?infor:“);
??scanf(“%c?%d?%d“&fir&sec&thi);
??te?=?getchar();
??car.car_num?=?sec;
??car.arr_time?=?thi;
??while(thi!=‘E‘)
??{
?
??
?????if(fir?==?‘A‘)
?{
????????if(isfull(box))
{
???enQueue(waitcar);
}
else
{
???push(boxcar);
}
?}
?else?if(fir?==?‘D‘)
?{
?struct?SNode??tem_car;
?struct?SNode??tem_car2;
?pop(boxtem_car);
????while(tem_car.car_num!=car.car_num)
{
????push(temptem_car);
pop(boxtem_car);
}
while(!Sisempty(temp))
{
???pop(temptem_car2);
???push(boxtem_car2);
}
????????if(!Qisempty(wait))
{
???deQueue(waittem_car2thi);
???push(boxtem_car2);
}
fee?=?thi?-?tem_car.arr_time;
printf(“the?fee?of?%d?car?is:%d\n“tem_car.car_num
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????531??2009-07-30?12:14??停車場問題\fee.dsw
?????文件??????41984??2009-09-07?11:16??停車場問題\fee.ncb
?????文件????????240??2009-07-30?21:40??停車場問題\fee.plg
?????文件???????4248??2009-07-30?12:41??停車場問題\fee.dsp
?????文件??????33792??2009-07-30?21:41??停車場問題\Debug\vc60.idb
?????文件??????53248??2009-07-30?21:38??停車場問題\Debug\vc60.pdb
?????文件?????220992??2009-07-30?21:23??停車場問題\Debug\fee.pch
?????文件?????178576??2009-07-30?21:38??停車場問題\Debug\fee.ilk
?????文件?????167992??2009-07-30?21:38??停車場問題\Debug\fee.exe
?????文件?????427008??2009-07-30?21:38??停車場問題\Debug\fee.pdb
?????文件???????9480??2009-07-30?21:38??停車場問題\Debug\fee.obj
?????文件???????3217??2009-07-30?21:37??停車場問題\fee.cpp
?????文件??????53760??2009-09-07?11:16??停車場問題\fee.opt
?????目錄??????????0??2009-07-30?21:23??停車場問題\Debug
?????目錄??????????0??2009-07-30?12:14??停車場問題
-----------?---------??----------?-----??----
??????????????1195068????????????????????15
評論
共有 條評論