作业帮 > 综合 > 作业

给定两个多项式,实现两个多项式相加算法.用c语言编程

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/17 02:35:47
给定两个多项式,实现两个多项式相加算法.用c语言编程
第一行输入包含两个整数m,n
后续为m行和n行数据
m,n分别代表两个多项式的项数
后续每一行代表多项式的项,包含a,b两个数据,表示该项的系数和指数.
我希望大家能帮我看看到底哪里出错了!
#include
int main(void)
{
int m,n,i,j,t=0,flag=0;
scanf("%d%d",&m,&n);
struct node
{int a,b;}data1[20],data2[20],data[40];
for(i=0;i
输入data2的时候,你看你for里面是j,scanf里面是i,读不进去
for(j=0;j
再问: 嗯,我太马虎了。可是改过之后还是不对呢
再答: 我又试了一下,还是有问题啊,我输的是m=4,n=3,结果输出三项,这可不是程序编写的错误,而是整体设计上不完整啊,需要大改的 你用来相加的两重循环,只能对data1项数多于data2项数时有效,当data2项中有不能匹配data1中的项时将被舍去 例如求5x²+8x+10 99x+20x³ 算的时候20x³算不上
再问: 嗯,我刚刚也发现了。我再想想吧
再答: 我以前也弄过一个多项式相加的,我当时的想法是data.b排序,只要是存在的b就存入data3, 然后对检查data1 和data2里所有符和data.b的项,再相加,只不过有点麻烦,不是科班的思路 比如说我想data1: x³+4x²+88x data2: x²+8+9x 我就先把b存入data3 3,2,1,0 然后再检查符和b的两个项式,算data3的a项