纠错typedef struct PNode { double cofe; int expn; struct PNode *next; }PNode,*Poly; void InitPoly(Poly po){...}; PNode po1; InitPoly(&po1);
时间: 2024-01-17 15:05:53 浏览: 22
经过纠错后,代码应该是这样的:
```
typedef struct PNode {
double cofe;
int expn;
struct PNode *next;
} PNode, *Poly;
void InitPoly(Poly po) {
// ...
}
PNode po1;
InitPoly(&po1);
```
这段代码定义了一个多项式的链表结构体 PNode,其中包含了系数和指数两个成员变量,以及一个指向下一个结点的指针。同时,使用 typedef 给这个结构体定义了两个别名:PNode 和 Poly。
接下来,定义了一个名为 po1 的 PNode 类型的变量。然后,使用 InitPoly 函数对这个链表进行初始化。由于 InitPoly 函数的参数类型是 Poly,而 po1 的类型是 PNode,因此需要使用取地址符 & 将 po1 的地址作为参数传入函数中。
需要注意的是,Poly 是一个指向 PNode 的指针类型,因此在函数内部可以通过访问指针成员的方式来操作链表。
相关问题
已知用单链表表示一元多项式各项的定义如下: typedef struct PNode { float coef; //系数 int expn; //指数 struct PNode *next; //指针域 }PNode,*Polynomial; 请补充完成A(x) =7-3x+6x7-5x9和B(x)=3x+22x70-9x2020的结构形式。
A(x)的结构形式为:
Polynomial A = (Polynomial)malloc(sizeof(PNode));
A->coef = 7;
A->expn = 0;
A->next = (Polynomial)malloc(sizeof(PNode));
A->next->coef = -3;
A->next->expn = 6;
A->next->next = (Polynomial)malloc(sizeof(PNode));
A->next->next->coef = 6;
A->next->next->expn = 7;
A->next->next->next = (Polynomial)malloc(sizeof(PNode));
A->next->next->next->coef = -5;
A->next->next->next->expn = 9;
A->next->next->next->next = NULL;
B(x)的结构形式为:
Polynomial B = (Polynomial)malloc(sizeof(PNode));
B->coef = 0;
B->expn = 0;
B->next = (Polynomial)malloc(sizeof(PNode));
B->next->coef = 3;
B->next->expn = 22;
B->next->next = (Polynomial)malloc(sizeof(PNode));
B->next->next->coef = -9;
B->next->next->expn = 2020;
B->next->next->next = (Polynomial)malloc(sizeof(PNode));
B->next->next->next->coef = 0;
B->next->next->next->expn = 0;
B->next->next->next->next = (Polynomial)malloc(sizeof(PNode));
B->next->next->next->next->coef = 0;
B->next->next->next->next->expn = 0;
B->next->next->next->next->next = (Polynomial)malloc(sizeof(PNode));
B->next->next->next->next->next->coef = 0;
B->next->next->next->next->next->expn = 0;
B->next->next->next->next->next->next = (Polynomial)malloc(sizeof(PNode));
B->next->next->next->next->next->next->coef = 0;
B->next->next->next->next->next->next->expn = 0;
B->next->next->next->next->next->next->next = (Polynomial)malloc(sizeof(PNode));
B->next->next->next->next->next->next->next->coef = 0;
B->next->next->next->next->next->next->next->expn = 0;
B->next->next->next->next->next->next->next->next = (Polynomial)malloc(sizeof(PNode));
B->next->next->next->next->next->next->next->next->coef = 0;
B->next->next->next->next->next->next->next->next->expn = 0;
B->next->next->next->next->next->next->next->next->next = (Polynomial)malloc(sizeof(PNode));
B->next->next->next->next->next->next->next->next->next->coef = 0;
B->next->next->next->next->next->next->next->next->next->expn = 0;
B->next->next->next->next->next->next->next->next->next->next = (Polynomial)malloc(sizeof(PNode));
B->next->next->next->next->next->next->next->next->next->next->coef = 0;
B->next->next->next->next->next->next->next->next->next->next->expn = 0;
B->next->next->next->next->next->next->next->next->next->next->next = (Polynomial)malloc(sizeof(PNode));
B->next->next->next->next->next->next->next->next->next->next->next->coef = 0;
B->next->next->next->next->next->next->next->next->next->next->next->expn = 0;
B->next->next->next->next->next->next->next->next->next->next->next->next = (Polynomial)malloc(sizeof(PNode));
B->next->next->next->next->next->next->next->next->next->next->next->next->coef = 0;
B->next->next->next->next->next->next->next->next->next->next->next->next->expn = 0;
B->next->next->next->next->next->next->next->next->next->next->next->next->next = (Polynomial)malloc(sizeof(PNode));
B->next->next->next->next->next->next->next->next->next->next->next->next->next->coef = 0;
B->next->next->next->next->next->next->next->next->next->next->next->next->next->expn = 0;
B->next->next->next->next->next->next->next->next->next->next->next->next->next->next = NULL;
typedef struct node { int data; struct node *next; } NodeType;
This is a definition of a struct called "node" that has two members: an integer data member called "data" and a pointer to another node struct called "next". The struct is typedef'd as "NodeType" for convenience. This struct can be used to create linked lists, where each node contains a piece of data and a pointer to the next node in the list.