实验四:线性结构的应用

时间:2015-01-13 11:37:19
【文件属性】:

文件名称:实验四:线性结构的应用

文件大小:58KB

文件格式:DOC

更新时间:2015-01-13 11:37:19

实验四:线性结构的应用

实验目的 1. 熟练掌握线性表的各种操作; 2. 掌握栈的各种操作; 实验要求 1、线性表中一元多项式相加 2、栈—数制转换和求n! 实验仪器 PC机,C++软件 实验步骤 1.根据实验内容编程,上机调试、得出正确的运行程序。 2. 编译运行程序,观察运行情况和输出结果。 3. 写出实验报告(包括源程序和运行结果)。 实验内容 #include typedef struct term{ float coef; int exp; struct term *next; }term, *polynom; void PolyAdd(polynom &ah;, polynom bh) { polynom pa,pa1,pb,pb1; float sum; int k; pa1=ah; pa=ah->next; pb1=bh; pb=bh->next; while(pa!=NULL && pb!=NULL) { if(pa->exp>pb->exp) k=1; else if(pa->exp==pb->exp) k=2; else k=3; switch(k) { case 1: pa1=pa; pa=pa->next; break; case 2: sum=pa->coef+pb->coef; if(sum!=0) { pa->coef=sum; pa1=pa; pa=pa->next; } else { pa1->next=pa->next; delete pa; pa=pa1->next; } pb1->next=pb->next; delete pb; pb=pb1->next; break; case 3: pa1->next=pb; pb=pb->next; pb1->next->next=pa; pa1=pa1->next; pb1->next=pb; } } if(pb!=NULL) pa->next=pb; delete bh; } polynom creat() { polynom ah,s; ah=new term; ah->next=NULL; int n1,e,i;float a; cout<<"请输入A(x)多项式的项数:"; cin>>n1; cout<<"\n请由低到高输入A(x)多项式的各项:"; for(i=1;i<=n1;i++) { cout<<"\n请输入第"<>a; cout<<"\n请输入第"<>e; s=new term; s->coef=a; s->exp=e; s->next=ah->next; ah->next=s; } return ah; } void print(polynom ah) { polynom p; p=ah->next; float a;int e; if(p==NULL)cout<<"该单链表是空的!\n"; else do { a=p->coef ;e=p->exp ; cout<next; if(p!=NULL) cout<<"+"; }while(p!=NULL); cout<


网友评论