#include<iostream>

#include<malloc.h>

#include<cstdio>

#include<stdlib.h>

using namespace std;

/*定义LinkNode*/

typedef struct LNode

{

float coef;

int exp;

struct LNode *next;

}LinkNode;

/*主要的代码就在这了,问题也在这,一元多项式求和*/

LinkNode* LocateAdd(LinkNode* list1, LinkNode* list2){

LinkNode* p1 = list1->next;

LinkNode* p2 = list2->next;

LinkNode* p3 = (LinkNode *)malloc(sizeof(LinkNode));

p3->coef = 0;

p3->exp = 0;

p3->next = NULL;

LinkNode* p4 = p3;

while (p1 && p2){

LinkNode* pNode = (LinkNode *)malloc(sizeof(LinkNode));

double coef1 = p1->coef;

int expn1 = p1->exp;

double coef2 = p2->coef;

int expn2 = p2->exp;

if (expn1 == expn2){

if (coef1 + coef2 != 0){

pNode->coef = coef1 + coef2;

pNode->exp = expn1;

pNode->next = NULL;

p4->next = pNode;

p4 = pNode;

}

p1 = p1->next;

p2 = p2->next;

free(pNode);

}

if (expn1 < expn2){

pNode->coef = coef1;

pNode->exp = expn1;

pNode->next = NULL;

p4->next = pNode;

p4 = pNode;

p1 = p1->next;

}

if (expn1 > expn2){

pNode->coef = coef2;

pNode->exp = expn2;

pNode->next = NULL;

p4->next = pNode;

p4 = pNode;

p2 = p2->next;

}

}

if (p1 == NULL){

while (p2){

LinkNode* ppNode = (LinkNode *)malloc(sizeof(LinkNode));

ppNode->coef = p2->coef;

ppNode->exp = p2->exp;

ppNode->next = NULL;

p4->next = ppNode;

p4 = ppNode;

p2 = p2->next;

}

}

else if (p2 == NULL){

while (p1){

LinkNode* ppNode = (LinkNode *)malloc(sizeof(LinkNode));

ppNode->coef = p1->coef;

ppNode->exp = p1->exp;

ppNode->next = NULL;

p4->next = ppNode;

p4 = ppNode;

p1=p1->next;

}

}

p4=p3->next;

while (p4!NULL)

{

cout<<p4->coef<<"x^"<<p4->exp;

p4=p4->next;

}

return ;

}

/*提示输入*/

void InputFormat1(float &item1)

{

cout<<"Please enter the coefficient of an item !"<<endl;

cin>>item1;

}

/*提示输入*/

void InputFormat2(int &item2)

{

cout<<"Please enter the power series of item !"<<endl;

cin>>item2;

}

/*主函数*/

int main()

{

float item_1=0;

int item_2=0;

LinkNode *QX;

LinkNode *PX;

LinkNode *Q_x;

LinkNode *P_x;

LinkNode *Tp,*Tm;

PX=(LinkNode *)malloc(sizeof(LinkNode));/*PX存储P(x)*/

QX=(LinkNode *)malloc(sizeof(LinkNode));/*QX存储Q(x)*/

Tp=PX;

Tm=QX;

int num;

cout<<"Please enter the number of terms of polynomial P(x)!"<<endl;

cin>>num;

while(num>0)                  /*尾插法*/

{

P_x=(LinkNode *)malloc(sizeof(LinkNode));

num--;

InputFormat1(item_1);

P_x->coef=item_1;

InputFormat2(item_2);

P_x->exp=item_2;

Tp->next=P_x;

Tp=P_x;

}

cout<<"Please enter the number of terms of polynomial Q(x)!"<<endl;

cin>>num;

while(num>0)                /*尾插法*/

{

num--;

Q_x=(LinkNode *)malloc(sizeof(LinkNode));

InputFormat1(item_1);

Q_x->coef=item_1;

InputFormat2(item_2);

Q_x->exp=item_2;

Tm->next=Q_x;

Tm=Q_x;

}

LocateAdd(PX,QX);

}

请大lao帮我康康代码(拜托拜托)一元多项式求和的c++代码相关推荐

  1. php拉图片 图片变形,请大神帮我看这个图片变形公式

    这是一个图片的运算,http://blog.csdn.net/jia_zhengshen/article/details/12008371 需要看的只有第38页那个公式以及4.4.1那一段话 另外这是 ...

  2. android 开机打开串口失败,请大神帮我看看这是怎么回事,一用就说串口打开失败,再电脑上试...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 package com.example.fandemonew; import com.example.demo.library.SerialPort; i ...

  3. matlab课程设计实验,请大神帮我写一个数学实验的课程设计,用MATLAB,

    天东 幼苗 共回答了11个问题采纳率:81.8% %结果是142857 function s=myfun() flag=0; i=10; while(flag==0) a=num2str(i); b= ...

  4. java标签不显示文字_此程序在运行后,窗体上不显示标签的文字,也不显示图标,我自己检查也没发现什么问题,请大神帮帮忙看看我哪个地方有问题?...

    public class TestIcon extends JFrame { /** * 此程序运用窗体,实现图标的移动,主要循环图标的横坐标,到达最右边然后又回到最左边,如此循环下去 * */ pr ...

  5. vb编程转为c语言,请大神帮我把C语言转换成VB语言

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 'VB6的写法 Option Explicit Const PI = 3.1415926 Const Num = 36 Const Num1 = Num ...

  6. c语言 u2_printf,请大神帮我把C语言转换成VB语言

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 'VB6的写法 Option Explicit Const PI = 3.1415926 Const Num = 36 Const Num1 = Num ...

  7. 请大神帮我看看这是什么问题

    我在一个按钮点击事件之后改变这个按钮和另一个按钮的背景图片,但是改变背景之后,发现按钮上的文字不在了,请问这是怎么回事? btn_tiqu.setBackgroundResource(R.drawab ...

  8. java 控制台刷屏 dll_Java刷屏问题,下面是我编的代码,请大神帮忙解决下,谢谢...

    importjava.awt.*;importjavax.swing.*;importjava.awt.event.*;publicclassjiemianextendsJFrame{JButtonz ...

  9. php输出后以密文显示,加密解密,_求大神帮看一下,如何根据下面的程序,把明文生成密文谢谢,加密解密 - phpStudy...

    求大神帮看一下,如何根据下面的程序,把明文生成密文谢谢 求大神帮看一下,如何根据下面的程序,把明文生成密文谢谢 def parserLicense(self,encCode): data = base ...

最新文章

  1. 客户端修改文件服务器密码,客户端服务器登录 密码问题
  2. 卫星互联网行业深度报告:战火早已熊熊燃烧
  3. c语言 printf右对齐,杨辉三角右对齐
  4. Atitit. 数据库-----catalog与schema的设计区别以及在实际中使用 获取数据库所有库表 java jdbc php  c#.Net...
  5. 注释转换——(小项目)
  6. 京东秒杀系统模块的Redis分布式锁深度剖析,没给你讲明白你打我
  7. linux 基础学,linux基础学习【1】
  8. SAP License:SAP CO ML 物料帐配置
  9. canvas 压缩图片上传
  10. InnoDB存储引擎关键特性
  11. STM32 CubeMX 串口通信
  12. 初学者关于贝叶斯纳什均衡各类符号的一点理解
  13. Android DevicePolicyManager 设备管理
  14. python是爬虫的意思吗_python跟爬虫的区别
  15. Hexo文章中图片点击实现全屏查看
  16. LateX正文与首页页眉线分别为单双线的设置方法
  17. mallplus多商户商城全流程 操作文档
  18. Jmeter01 -mac下的安装
  19. 30年前他发明了万维网,现在他要颠覆互联网
  20. 新巴巴运动网 项目第三天

热门文章

  1. linux实验报告哈工大,哈工大操作系统实验---lab8:proc文件的实现
  2. AndFix简单集成实现
  3. Shell中alias介绍
  4. 2017CME中国机床展会刊(参展商名录)
  5. 推荐5 款好用的 Linux 音乐播放器
  6. Chrome的使用技巧
  7. 机器人技术(RoboCup 2D)如何进行一场球赛
  8. 逆天法修改模拟器deviceID
  9. 集成Linux版QQ Ylmf OS 2.0新功能点评
  10. geth 以太坊技术