文档介绍:本文格式为Word版,下载可任意编辑
— 2 —
数据结构实验报告
本科测验报告
课程名称:
数据布局(C 语言版)
测验工程:
线性表、树、图、查找、内排序
测验q=x;
++;
return OK;
}
void PrintLinkList(SqList L){//输出依次表
for(int i=0;;i++){
printf(%c,[i]);
}
} int main(void){
SqList L;
InitList (L);
//PrintLinkList(L);
本文格式为Word版,下载可任意编辑
— 5 —
ElemType x;
printf (输入插入元素:);
scanf(%c,x);
ListInsert_Sq(L,x);
printf (线性表为:);
PrintLinkList(L);
return 0; }
#include
#include #include #define OK 1
typedef struct{//项的表示,多项式的项作为 LinkList 的数据元素
float coef;//系数
int expn;//指数
}term,ElemType;
typedef struct LNode{ //单链表节点布局
ElemType data;
struct LNode *next; }LNode, *LinkList;
typedef LinkList polynomial;
int CreatLinkList(polynomial P,int n){ //创造多项式
P = (polynomial)malloc(sizeof(LNode));
polynomial q=P;
q-next=NULL;
本文格式为Word版,下载可任意编辑
— 6 —
polynomial s;
for(int i = 0; i n; i++){
s = (polynomial)malloc(sizeof(LNode));
scanf(%f%d,(s-),(s-));
q-next = s;
s-next = NULL;
q=q-next;
}
return OK; } 运行结果
2. void PrintfPolyn(polynomial P){
polynomial q;
for(q=P-next;q;q=q-next){
if(q-!=1)
printf(%g,q-);
if(q-)
printf(%c%c%d,"x","^",q-);
else printf(%g,q-);
if(q-next) printf( + );
}
printf(\n); }
void AddPolyn(polynomial Pa,polynomial Pb,polynomial Pc) {
本文格式为Word版,下载可任意编辑
— 7 —
polynomial qa,qb,qc;
qa=Pa-next;
qb=Pb-next;
qc=Pc;
//qa、qb、qc 分别指向 Pa、Pb、Pc 的当前结点
while(qaqb){
if((qa-)(qb-)){
qc-next=qa;qc=qa;
qa=qa-next;
}
if((qa-)(qb-)){
qc-next=qb;qc=qb;
qb=qb-next;
}
if((qa-)==(qb-data.