多项式类的c++实现
时间: 2024-03-29 16:27:47 浏览: 132
你可以使用 C 语言实现一个多项式类,以下是一个简单的示例:
```c
#include <stdio.h>
#include <stdlib.h>
typedef struct {
int degree;
int* coefficients;
} Polynomial;
Polynomial createPolynomial(int degree) {
Polynomial p;
p.degree = degree;
p.coefficients = (int*)malloc((degree + 1) * sizeof(int));
for (int i = 0; i <= degree; i++) {
p.coefficients[i] = 0;
}
return p;
}
void setCoefficient(Polynomial* p, int degree, int coefficient) {
if (degree <= p->degree) {
p->coefficients[degree] = coefficient;
} else {
printf("Degree is out of range.\n");
}
}
int getCoefficient(Polynomial* p, int degree) {
if (degree <= p->degree) {
return p->coefficients[degree];
} else {
printf("Degree is out of range.\n");
return 0;
}
}
void printPolynomial(Polynomial* p) {
for (int i = p->degree; i >= 0; i--) {
if (p->coefficients[i] != 0) {
printf("%dx^%d ", p->coefficients[i], i);
}
}
printf("\n");
}
void destroyPolynomial(Polynomial* p) {
free(p->coefficients);
}
int main() {
Polynomial p = createPolynomial(3);
setCoefficient(&p, 0, 2);
setCoefficient(&p, 1, -3);
setCoefficient(&p, 2, 1);
setCoefficient(&p, 3, 4);
printPolynomial(&p);
destroyPolynomial(&p);
return 0;
}
```
这个示例代码实现了一个多项式类,具有以下功能:
- `createPolynomial` 函数用于创建一个指定次数的多项式,并初始化系数为 0。
- `setCoefficient` 函数用于设置指定次数的系数。
- `getCoefficient` 函数用于获取指定次数的系数。
- `printPolynomial` 函数用于打印多项式表达式。
- `destroyPolynomial` 函数用于释放多项式的内存。
阅读全文