做软基实验的时候出现的问题,题目大概是:建立一个空线性链表,依次进行扫描、插入、扫描、删除、扫描的操作。
代码如下
//linked_List.h
#include <iostream>
using namespace std;
//定义结点类型
template <class T> //T为虚拟类型
struct node
{ T d;
node *next;
};
//定义线性链表类
template <class T> //模板声明,数据元素虚拟类型为T
class linked_List
{ private: //数据成员
node<T> *head; //链表头指针
public: //成员函数
linked_List(); //构造函数,建立空链表
void prt_linked_List(); //扫描输出链表中的元素
void ins_linked_List(T, T); //在包含元素x的结点前插入新元素b
int del_linked_List(T); //删除包含元素x的结点
};
//建立空链表
template <class T>
linked_List<T>::linked_List()
{ head=NULL; return; }
//扫描输出链表中的元素
template <class T>
void linked_List<T>::prt_linked_List()
{ node<T> *p;
p=head;
if (p==NULL) { cout <<"空链表!" <<endl; return; }
do { cout <<p->d <<endl;
p=p->next;
} while (p!=NULL);
return;
}
//在包含元素x的结点前插入新元素b
template <class T>
void linked_List<T>::ins_linked_List(T x, T b)
{ node<T> *p, *q;
p=new node<T>; //申请一个新结点
p->d=b; //置新结点的数据域
if (head==NULL) //原链表为空
{ head=p; p->next=NULL; return;}
if (head->d==x) //在第一个结点前插入
{ p->next=head; head=p; return; }
q=head;
while ((q->next!=NULL)&&(((q->next)->d)!=x))
q=q->next; //寻找包含元素x的前一个结点q
p->next=q->next; q->next=p; //新结点p插入到结点q之后
return;
}
//删除包含元素x的结点元素
template <class T>
int linked_List<T>::del_linked_List(T x)
{ node<T> *p, *q;
if (head==NULL) return(0); //链表为空,无删除的元素
if ((head->d)==x) //删除第一个结点
{ p=head->next; delete head; head=p; return(1); }
q=head;
while ((q->next!=NULL)&&(((q->next)->d)!=x))
q=q->next; //寻找包含元素x的前一个结点q
if (q->next==NULL) return(0); //链表中无删除的元素
p=q->next; q->next=p->next; //删除q的下一个结点p
delete p; //释放结点p的存储空间
return(1);
}
#include"linked_List.h"
int main()
{linked_List<int> s;
cout<<"第一次扫描输出链表s中的元素:"<<endl;
s.prt_linked_List();
s.ins_linked_List(10,10);
s.ins_linked_List(10,20);
s.ins_linked_List(10,30);
s.ins_linked_List(40,40);
cout<<"第二次扫描输出链表s中的元素:"<<endl;
s.prt_linked_List();
if(s.del_linked_List(30))
cout<<"删除元素:30"<<endl;
else
cout<<"链表中无元素:30"<<endl;
if(s.del_linked_List(50))
cout<<"删除元素:50"<<endl;
else
cout<<"链表中无元素:50"<<endl;
cout<<"第三次扫描输出链表s中的元素:"<<endl;
s.prt_linked_List();
return 0;
}
运行结果
很多程序都出现了这个 No such file or directory,不是很懂,求大佬讲的通俗一点应该怎么解决