线性表实验相关程序代码

来源:互联网 发布:阿里云二手域名 编辑:程序博客网 时间:2024/06/08 09:13

先说一些废话:代码一点不会,所以抄了个书上的。在上机的时候敲了两遍,边抄边记住。最后实在不知道到底哪里错了,索性就这样了。

const int MaxSize=10;class SeqList{public:SeqList(){length=0;}SeqList(int a[],int n);~SeqList(){}void Insert(int i,int x);int Delete(int i);int Locate(int x);void PrintList();private:int data[MaxSize];int length;};

const int MaxSize=10
这个老师布置的是N个数据,估计是要具体点比较好写。

#include<iostream>using namespace std;#include "SeqList.h"SeqList::SeqList(int a[],int n){if(n>MaxSize)throw "参数非法";for(int i=0;i<n;i++)data[i]=a[i];length=n;}void SeqList::Insert(int i ,int x){if(length>=MaxSize)throw "上溢";if(i<1||i>length+1)throw "位置非法";for(int j=length;j>=i;j++)data[j-1];data[i-1]=x;length++;}int SeqList::Delete(int i){if(length==0)throw "下溢";if(i<1||i>length)throw "位置非法";int x=data[i-1];for(int j=i;j<length;j++)data[j-1]=data[j];length--;return x;}int SeqList::Locate(int x){for(int i=0;i<length;i++)if(data[i]==x)return i+1;return 0;}void SeqList::PrintList(){for(int i=0;i<length;i++)cout<<data[i]<<" ";cout<<endl;}
#include "SeqList.h"
上面这句要去掉了。

void main(){int r[5]=1,2,3,4,5};SeqList L(r,5);cout<<"执行插入操作前数据为:"<<endl;L.PrintList();try{L.Insert(2,3);}catch(char *s)
书上给的代码我原封不动抄了一遍,发现怎么都有错啊,估计是另要写类似
#include<iostream>
这样的语句。给的代码涉及到头文件与源程序之间的引用,然后我把类似
#include "SeqList.h"
这样的语句去掉,把三部分代码弄到一个文件里,发现没有那么多错了。还是有错误,没法。
SeqList::SeqList(int a[],int n)
从第二部分的这里开始错,后面大同小异。



0 0