编写一个c语言程序,要求实现一元多项式相加
时间: 2024-11-04 18:14:34 浏览: 35
一元多项式相加实验报告(C语言实现)
5星 · 资源好评率100%
编写C语言程序来实现一元多项式的相加,你可以创建一个结构体来表示多项式的系数和指数,然后定义函数来合并两个这样的结构。这里是一个简单的例子:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义多项式的结构体
typedef struct {
double coefficient; // 系数
int exponent; // 指数
} Term;
// 函数来计算多项式的加法
Term addTerms(Term a, Term b) {
if (a.exponent > b.exponent)
return a;
else if (b.exponent > a.exponent)
return b;
else {
Term result = {0};
result.coefficient = a.coefficient + b.coefficient;
result.exponent = a.exponent;
return result;
}
}
// 功能用于将多项式转换为字符串展示
void displayTerm(Term term) {
printf("%.2f*x^%d ", term.coefficient, term.exponent);
}
int main() {
// 创建两个多项式的实例
Term poly1 = {2.5, 2}; // 2.5x^2
Term poly2 = {3.7, 1}; // 3.7x^1
// 相加
Term sum = addTerms(poly1, poly2);
// 输出结果
printf("Poly1: %.2fx^%d\n", poly1.coefficient, poly1.exponent);
printf("Poly2: %.2fx^%d\n", poly2.coefficient, poly2.exponent);
printf("Sum: %.2fx^%d\n", sum.coefficient, sum.exponent);
return 0;
}
```
这个程序首先定义了`Term`结构体存储系数和指数,接着实现了`addTerms`函数来进行相加操作,并提供了一个`displayTerm`函数用于打印出每个项。在`main`函数里,我们创建了两个多项式并相加,最后显示它们各自的表达式以及总和。
阅读全文