实验名称 实验1表的实现和应用 专业 软件工程
一、实验目的:
(1)掌握表的基本操作;
(2)实现并比较表的不同存储结构;
(3)表的实例应用。
二、实验内容:
1.选用两种存储结构建立线性表并比较。
2.实现表的应用。
三、实验设备及软件环境:
设备:实验室电脑
环境:VS2010
四、实验过程及结果:
#include
using namespace std;
template
class sqlist
{
protected:
T * elems;
public:
sqlist(){elems=new T[0];};
sqlist(int m)
{
elems=new T[m+1];
for(int i=1;i<=m;i++)
elems[i]=i;
}
void swap (int &x,int &y){
int t=x;
x=y;
y=t;
}
void jiaohuan(int k,int n)
{
for(int i=k;i<=n;i++)
{
swap(elems[k],elems[i]);
if(k==n){
for(int i=1;i<=n;i++)
cout<<elems[i];
cout<<endl;
}
else jiaohuan(k+1,n);
swap(elems[k],elems[i]);
}
}
};
int main()
{
int n;
cin>>n;
sqlist a(n);
a.hanshu(1,n);
return 0;
}
五、总结:
通过这次实验,使我更加熟练的使用表。此外,我还发现自己的不足,还需要多加练习。
实验成绩: 指导教师: 年 月 日
实验名称 实验2 栈和队列的实现和应用 专业 软件工程
一、实验目的:
(1)掌握栈、队列的建立方法和基本操作;
(2)实现并比较栈和队列的不同存储结构。
二、实验内容:
1.任选一种存储结构建立栈、队列。
2.比较栈和队列的不同存储结构。
3.栈的应用。
三、实验设备及软件环境:
设备:实验室电脑
环境:VS2010
四、实验过程及结果:
#include
#include<windows.h>
using namespace std;
#define MAXSIZE 100
class Stack{
public:
Stack() { top = 0; };
void CreateStack();
void OutputStack();
void ClearStack();
int StackLength();
char OutTop();
void Push(char );
char Pop();
private:
char a[MAXSIZE];
int top;
int x;
};
void Stack::CreateStack()
{
cout << “请输入栈的元素个数:”;
cin >> top;
cout << “请依次输入栈的元素” << endl;
for (int i=1; i<=top; i++)
{
cin >> a[i];
}
cout<<“请输入任意数返回菜单”;
cin>>x;
system(“cls”);
}
void Stack::OutputStack()
{
int w;
w = top;
if(top == 0)
cout << “栈是空的!” << endl;
else
{
cout << “输出栈中元素:” << endl;
while(w >= 1)
{
cout << a[w] << " ";
w–;
}
cout << endl;