/*设计一个队列类,具有建立、清空、判断长度、
插入、删除、排序、查找、逆序、分类(比如奇偶分类)
统计(如偶数的个数)等功能。*/
#include<iostream>
#include<string>
#include<conio.h>
using namespace std;
template <class T>
class Queue
{
T element[100];
public:
Queue(){};
void Return0()
{
int i;
for(i=0;i<100;i++)
element[i]=-858993460;
}
void Build(){}
void Clean(){}
void Length(){}
void In()
{
int i;
cout<<"请输入你要建立的队列,输入符号结束"<<endl;
for(i=0;i<100;i++)
{
cin>>element[i];
}
}
void Rank()
{
int i,j;
T t;
for(i=0;i<99;i++)
for(j=i+1;j<100;j++)
if(element[i]>element[j])
{
t=element[i];
element[i]=element[j];
element[j]=t;
}
void Delete(){}
void search(){}
void Rerank()
{
int i,j;
T t;
for(i=0;i<99;i++)
for(j=i+1;j<100;j++)
if(element[i]<element[j])
{
t=element[i];
element[i]=element[j];
element[j]=t;
}
}
void Kind(){}
void Count(){}
}
void Out()
{
if(element[0]==-858993460)
cout<<"该队列无元素"<<endl;
int i;
for(i=0;i<100;i++)
{
if(element[i]==-858993460)
break;
cout<<element[i]<<" ";
}
cout<<endl;
}
};
void menu(Queue<int> a)
{/*设计一个队列类,具有建立、清空、判断长度、
插入、删除、排序、查找、逆序、分类(比如奇偶分类)
统计(如偶数的个数)等功能。*/
cout<<"队列管理系统"<<endl<<endl;
cout<<"1. 建立队列"<<endl<<endl;
cout<<"2. 清空队列"<<endl<<endl;
cout<<"3. 判断长度"<<endl<<endl;
cout<<"4. 插入元素"<<endl<<endl;
cout<<"5. 删除元素"<<endl<<endl;
cout<<"6. 队列排序"<<endl<<endl;
cout<<"7. 逆序排列"<<endl<<endl;
cout<<"8. 自动分类"<<endl<<endl;
cout<<"9. 元素统计"<<endl<<endl;
cout<<"10. 查找元素"<<endl<<endl;
char press;
loopmenu:
press=getch();
switch(press)
{ case '1':
a.Build();
break;
case '2':
a.Clean();
break;
case '3':
a.Length();
break;
case '4':
a.In();
break;
case '5':
a.Delete();
break;
case '6':
a.Rank();
break;
case '7':
a.Rerank();
break;
case '8':
a.Kind();
break;
case '9':
a.Count();
break;
case '10':
a.Search();
break;
default:
{
cout<<"请按正确的按键"<<endl;
goto loopmenu;
}
}
}
void main()
{
Queue<int> a;
menu(Queue<int> a);
}