主题总数:270876
总帖数:1119824
注册会员总数:255497
今日总帖数:307
|
|
├─◆ 狼盟首页 > 查看贴子 > 详细信息
楼主
求助

各位能帮我调一下如下的程序:#include<iostream>using namespace std;class link{public: char data; link* next;};class linklist{protected: link* head;public: link* rcreat(){ link*s,*r,*p; int i;char m; cin>>m; p=NULL; while(m==!'#') { s=NULL; if(m!=',') { s=new link; s->data=m; if(p==NULL) p=s; else r->next=s; r=s; } r->next=NULL; return p; }void print(link* head){ link* p; p=head->next; while(p->next!=NULL) { cout<<p->data<<"->"; p=p->next; } cout<<p->data; cout<<endl;}int length(link* head){ int i=1; link* q;q=head->next; while(q->next!=NULL) { i++; q=q->next; } return i;}link* get(link* head,int i){ int j; link*p; j=1; p=head->next; while((j<i)&&(p!=NULL)) { j++; p=p->next; } return p;}link* Locate(link* head,char x){ link* p; p=head->next; while((p!=NULL)&&(p->data!=x)) p=p->next; return p;}void insert(link* head,char x,char y){ link* p,*s; s=new link; s->data=x; if(head->next=NULL) { head->next=s; s->next=NULL; } p=Locate(head,y); if(p==NULL) cout<<"插入的位置非法"; else { s->next=p->next; p->next=s; }} void Dele(link* head,char x){ link* p,*q; q=head; p=head->next; while(p!=NULL)&&(p->data!=x); { q=p; p=p->next; } if(p==NULL) cout<<"插除的位置非法"; else { q->next=p->next; delete(p); }}};int main(){ linklist A;link* G;G=A.rcreat(); A.length(G); A.print(G); link* g;link* f; g=A.Locate(G,d); f=A.get(G,4); A.insert(G,w,h); A.print(G); A.Dele(G,y); A.print(G); return 0;}有一个错误:C:Documents and SettingsyygkkoMy Documentsyygkko.cpp(143) : fatal error C1004: unexpected end of file foundError executing cl.exe.谢谢。
-
ituse [ 1 楼 ]
2006-05-14 00:12:00
#include<iostream>using namespace std;class link{public: char data; link* next;};class linklist{protected: link* head;public: link* rcreat(); void print(link* head); int length(link* head); link* get(link* head,int i); void insert(link* head,char x,char y); void Dele(link* head,char x); link* Locate(link* head,char x);};link* linklist::rcreat(){ link*s,*r,*p; int i;char m; cin>>m; p=NULL; while(m==!'#') { s=NULL; if(m!=','){ s=new link; s->data=m; if(p==NULL) p=s; else r->next=s; r=s; } r->next=NULL; return p; }} //changedvoid linklist::print(link* head){ link* p; p=head->next; while(p->next!=NULL) { cout<<p->data<<"->"; p=p->next; } cout<<p->data; cout<<endl;}int linklist::length(link* head){ int i=1; link* q;q=head->next; while(q->next!=NULL){ i++; q=q->next; } return i;}link* linklist::get(link* head,int i){ int j; link*p; j=1; p=head->next; while((j<i)&&(p!=NULL)) { j++; p=p->next; } return p;}link* linklist::Locate(link* head,char x){ link* p; p=head->next; while((p!=NULL)&&(p->data!=x)) p=p->next; return p;}void linklist::Dele(link* head,char x){ link* p,*q; q=head; p=head->next; while((p!=NULL)&&(p->data!=x)) //changed { q=p; p=p->next; } if(p==NULL) cout<<"插除的位置非法"; else { q->next=p->next; delete(p); }}void linklist::insert(link* head,char x,char y){ link* p,*s; s=new link; s->data=x; if(head->next=NULL) { head->next=s; s->next=NULL; } p=Locate(head,y); if(p==NULL) cout<<"插入的位置非法"; else { s->next=p->next; p->next=s; }}int main(){ linklist A;link* G;G=A.rcreat(); A.length(G); A.print(G); link* g;link* f; g=A.Locate(G,d); //d未定义 f=A.get(G,4); A.insert(G,w,h); //w h未定义 A.print(G); A.Dele(G,y); //y未定义 A.print(G); return 0;} 给楼主粗略的看了一下,我改过一些,有标注,楼主自己看,编译器GCC
|
|
| |
|
|