课程设计逻辑结构谢珊
A. 数据结构课程设计分析报告
这个我也提问过 就是没人给回复。。。祝楼主好运吧
B. 我的数据结构课程设计!!! (急)
慢慢编程吧
C. 数据结构课程设计
我这有个停车场管理系统跟你的轮船渡口管理系统差不多!!改一下就能用!!
#include<iostream.h>
#include<string.h>
#include<stdlib.h> //free()函数功能
const int Max_Park=1;
int bian=0;//便道上有多少车
//.................................................................
struct Car
{
char pattent;//车辆类型,a=小轿车,b=客车,c=大卡车
int number;//车辆牌照
int intime;//车进入的时间,用整数表示
};
typedef struct Queue
{
Car car;
Queue*next;
}Queue,*LQueue;//模拟停车场外的便道
typedef struct Stack
{
Car *car;
int top;
}Stack,*LStack;//模拟停车场的栈
//..................................................................
class Road
{
public:
Queue q1;
LQueue q2;
public:
void InitQ(LQueue&Head,LQueue&Rear);//队列的初始化
void InQ(LQueue&Rear,Car pacr);//入队列
void FindQ(LQueue Head,int num);//在便道上查找车辆信息
void OutQ(LQueue Head,int num);//出便道
};//便道类结束
//...................................便道类函数定义
void Road::InitQ(LQueue&Head,LQueue&Rear)
{
Rear->next=NULL;
Head=Rear;
}//队列的初始化
void Road::InQ(LQueue&Rear,Car pacr)
{
LQueue Node=new Queue;
Node->car=pacr;
Node->next=NULL;
Rear->next=Node;
Rear=Rear->next;
bian++;
}//入队列
void Road:: FindQ(LQueue Head,int num)
{
int pos=0;
for(LQueue q=Head;q->next!=NULL;q=q->next,pos++)
{
if(q->next->car.number==num)
{
cout<<"要查找的车在便道"<<pos+1<<"位"<<" 车类型为";
switch(q->next->car.pattent)
{
case'a':cout<<"小轿车";break;
case'b':cout<<"客车";break;
case'c':cout<<"大卡车";break;
}
cout<<"此车进入的时间为"<<q->next->car.intime<<endl;
}
}
cout<<"此车不在停车场!!"<<endl;
}//在便道上查找车辆信息
void Road:: OutQ(LQueue Head,int num)
{
LQueue p=new Queue;
for(LQueue q=Head;q->next!=NULL;q=q->next)
{
if(q->next->car.number==num)
{
p=q->next;
q->next=p->next;
free(p);
bian--;
break;
}
}
}
//........................................................
class Park
{
public:
Stack s1;
Stack s2;
Road R7;
public:
void OutputS(Car e);
void InputS(Car&e);
void InitS(LStack ss1);
Car PopS(LStack ss1);
int PushS(LStack ss1,Car car);
int FindS(LStack ss1,int number);
void InPark(LStack ss1,LQueue &Rear);
void Delete(LStack ss1,LStack ss2,int n);
void OutPark(LStack ss1,LStack ss2,LQueue Head);
void Search(LStack ss1,LQueue Head,LQueue Rear);
};//车位类结束
//......................................车位类函数的定义
void Park::OutputS(Car e)
{
cout<<"这辆车的牌照是:"<<e.number<<endl<<"这辆车的类型是:";
switch(e.pattent)
{
case'a':cout<<"小轿车";break;
case'b':cout<<"客车";break;
case'c':cout<<"大卡车";break;
}
cout<<"进入时间为:"<<e.intime<<endl;
}//查询停车场的车
void Park:: InputS(Car&e)
{
cout<<"请输入此车的类型a=小轿车,b=客车,c=大客车"<<endl;
cin>>e.pattent;
cout<<"请输入此此车的牌照号:"<<endl;
cin>>e.number;
cout<<"请输入入场时间:"<<endl;
cin>>e.intime;
}//进入停车场的车
void Park::InitS(LStack ss)
{
ss->car=new Car[Max_Park];
ss->top=-1;
}//初始化栈
Car Park:: PopS(LStack ss)
{
Car eee=ss->car[ss->top];
ss->top--;
return eee;
}//出栈
int Park::PushS(LStack ss,Car car)
{
if(ss->top<Max_Park-1)
{
ss->top++;
ss->car[ss->top].intime=car.intime;
ss->car[ss->top].number=car.number;
ss->car[ss->top].pattent=car.pattent;
return 0;
}
else
return -1;
}//车位已满,则进入便道
int Park::FindS(LStack ss,int number)
{
for(int i=0;i<=ss->top;i++)
{
if(ss->car[i].number==number)
return i;
}
return -1;//在便道上查找要找的车
}//在车位上查找要找的车辆
void Park::InPark(LStack ss1,LQueue &Rear)
{
Car ee;
InputS(ee);
int n=PushS(ss1,ee);
if(n<0)
{
Car rcar;
rcar.number=ee.number;
rcar.pattent=ee.pattent;
rcar.intime=ee.intime;
R7.InQ(Rear ,rcar);
}
}//车辆进场,有车位如车位,无车位进便道
void Park::Delete(LStack ss1,LStack ss2,int n)
{
int size=ss1->top;
for(int i=0;i<size-n;i++)
PushS(ss2,PopS(ss1));
PopS(ss1);
for( i=0;i<size-n;i++)
PushS(ss1,PopS(ss2));
}//以一个栈为中转,将任意为的车出场
void Park::OutPark(LStack ss1,LStack ss2,LQueue Head)
{
cout<<"请输入要出场的车的车牌号:"<<endl;
int num;
cin>>num;
int nn;
nn=FindS(ss1,num);
if(nn>=0)
{
cout<<"这辆车在车位上"<<endl;
OutputS(ss1->car[nn]);
Delete(ss1,ss2,nn);
if(ss1->top<=Max_Park-1)
if(Head->next!=NULL)
{
cout<<"\n便道上的车要进车位!"<<endl;
LQueue p=new Queue;
p=Head->next;
Head->next=p->next;
PushS(ss1,p->car);
free(p);
bian--;
}
}
else
{
R7.FindQ( Head, num);
R7.OutQ( Head,num);
}
}//输出要出场的车
void Park::Search(LStack ss1,LQueue Head,LQueue Rear)
{
cout<<"停车场中现有"<<ss1->top+1<<"辆车"<<endl;
if(Head==Rear)
cout<<"便道上没有车!"<<endl;
else
cout<<"便道上停了"<<bian<<"辆车"<<endl;
}//输出停车场的车辆信息
//............................................................
void show()
{
cout<<"*********************本停车场信息**************************"<<endl;
cout<<"本停车场共有"<<Max_Park<<"个车位"<<endl;
cout<<"只允许停放小轿车,客车,大卡车"<<endl;
cout<<"车辆进入要做车辆类型,车牌,进入时间的记录"<<endl;
cout<<"***********************************************************"<<endl;
}
/*void choise()
{
if(Max_Park-(ss1->top+1)>0)
{
cout<<"停车场中"<<ss1->top+1<<"辆车"<<endl;
cout<<"还可以停放"<<Max_Park-(ss1->top+1)<<"辆车"<<endl;
}
else
cout<<"\n停车场已满,再来的车只能放在便道上!"<<endl;
cout<<"输入要进行的操作:"<<endl
<<"A=进场"<<endl
<<"D=出场"<<endl
<<"F=查询车辆信息"<<endl
<<"E=结束程序!"<<endl;
}*/
void main()
{
Road R6;
show();
LStack ss1=new Stack;//停车场的栈
LStack ss2=new Stack;//作为车辆中转的栈
LQueue Head=new Queue;//队列的头
LQueue Rear=new Queue;//队列的尾
R6.InitQ( Head, Rear);//队列初始化
Park park;
park.InitS(ss1);
park.InitS(ss2);
while(1)
{
if(Max_Park-(ss1->top+1)>0)
{
cout<<"停车场中"<<ss1->top+1<<"辆车"<<endl;
cout<<"还可以停放"<<Max_Park-(ss1->top+1)<<"辆车"<<endl;
}
else
cout<<"\n停车场已满,再来的车只能放在便道上!"<<endl;
cout<<"输入要进行的操作:"<<endl
<<"A=进场"<<endl
<<"D=出场"<<endl
<<"F=查询车辆信息"<<endl
<<"E=结束程序!"<<endl;
char demand;
cin>>demand;
switch(demand)
{
case 'A':
{
int w=1;
while(w)
{
park.InPark(ss1,Rear);
cout<<"车辆继续进场按1,要进行其他操作按0!"<<endl;
if(Max_Park-(ss1->top+1)>0)
{
cout<<"停车场中"<<ss1->top+1<<"辆车"<<endl;
cout<<"还可以停放"<<Max_Park-(ss1->top+1)<<"辆车"<<endl;
}
else
cout<<"\n停车场已满,再来的车只能放在便道上!"<<endl;
cout<<"输入要进行的操作:"<<endl
<<"A=进场"<<endl
<<"D=出场"<<endl
<<"F=查询车辆信息"<<endl
<<"E=结束程序!"<<endl;
cin>>w;
}
};break;
case 'D': park.OutPark(ss1,ss2, Head);break;
case'F':park.Search(ss1, Head, Rear) ; break;
case'E':exit(0);
}
}
}
D. 数据库逻辑结构设计和物理结构设计
一般可将数据库结构设计分为四个阶段,即需求分析、概念结构设计、逻辑结构回设计和物理设计答。
逻辑结构设计的任务是把概念模型,例如E-R图转换成所选用的具体的DBMS所支持的数据模型。在设计关系模型时,为了将来查询统计的需要,也有些是为了标准化的需要,对于某些属性要采用代码。
对一个给定的逻辑数据模型求取与应用需要相适应的物理结构的过程称为数据库物理设计。这种物理结构主要指数据库在物理设备上的存储结构和存取方法。对于关系数据库系统,数据的存储结构与存取方法由DBMS决定并自动实现,我们物理设计主要考虑的是在网络环境下数据库的分布及索引结构。
E. 急!急!!急!!!数字逻辑课程设计,小的学习不好,请各大神指导!帮助我这个小屁孩不挂科,不胜感激!
把设计观念说清楚
F. SQL数据库原理课程设计实验报告,就大神帮忙。。
兄弟,课程设计这种东西 还是自己动手做吧,工作数据库是不会少的,说实话,数据库是很有用的。
现在不练手,工作徒伤悲。。。。。