建立一元多项式单链表的函数c语言代码是什么
时间: 2023-05-11 17:07:09 浏览: 127
以下是建立一元多项式单链表的函数c语言代码:
```c
#include <stdio.h>
#include <stdlib.h>
typedef struct node {
int coef; // 系数
int expn; // 指数
struct node *next; // 指向下一个节点的指针
} Node, *Polynomial;
Polynomial create_poly() {
Polynomial head = (Polynomial)malloc(sizeof(Node)); // 创建头结点
head->next = NULL; // 头结点的指针域初始化为NULL
Node *tail = head; // 尾指针初始化为头结点
int n; // 多项式的项数
printf("请输入多项式的项数:");
scanf("%d", &n);
for (int i = 0; i < n; i++) {
Node *p = (Node*)malloc(sizeof(Node)); // 创建新节点
printf("请输入第%d项的系数和指数:", i + 1);
scanf("%d%d", &p->coef, &p->expn);
p->next = NULL; // 新节点的指针域初始化为NULL
tail->next = p; // 将新节点插入到尾结点后面
tail = p; // 更新尾指针
}
return head;
}
void print_poly(Polynomial p) {
Node *cur = p->next; // 从第一个节点开始遍历
while (cur) {
printf("%dx^%d", cur->coef, cur->expn);
cur = cur->next;
if (cur) {
printf("+");
}
}
printf("\n");
}
int main() {
Polynomial p = create_poly();
print_poly(p);
return 0;
}
```
希望能够帮到您!
阅读全文