C语言多项式加法_第1页
C语言多项式加法_第2页
C语言多项式加法_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C语言题目 - 多项式加法多项式加法( 10 分)题目内容:一个多项式可以表达为x 的各次幂与系数乘积的和,比如:2x6+3x5+12x3+6x+20现在,你的程序要读入两个多项式,然后输出这两个多项式的和,也就是把对应的幂上的系数相加然后输出。程序要处理的幂最大为100。输入格式 :总共要输入两个多项式,每个多项式的输入格式如下:每行输入两个数字,第一个表示幂次,第二个表示该幂次的系数,所有的系数都是整数。第一行一定是最高幂,最后一行一定是 0 次幂。注意第一行和最后一行之间不一定按照幂次降低顺序排列;如果某个幂次的系数为据中了; 0 次幂的系数为 0 时还是会出现在输入数据中。0,就不出现

2、在输入数输出格式:从最高幂开始依次降到0 幂,如:2x6+3x5+12x3-6x+20注意其中的x 是小写字母x ,而且所有的符号之间都没有空格,如果某个幂的系数为0 则不需要有那项。输入样例:6 25 33 121 60 206 25 32 121 60 20输出样例:4x6+6x5+12x3+12x2+12x+40时间限制: 500ms 内存限制: 32000kb代码#include <stdio.h>/ 此程序需要分3 种情况, 一、幂为0;二、幂为1;三、幂大于 1int a105,b105;int main()int x,y;while (scanf("%d%d

3、",&x,&y)/存储第一个多项式的数据,当幂为0 时停止输入ax=y;if (x=0) break;while (scanf("%d%d",&x,&y)/存储第二个多项式的数据,当幂为0 时停止输入bx=y;if (x=0) break;for (int i=0;i<=100;i+)ai=ai+bi;/ 将两个多项式的系数相加保存到数组ai 中式子int flag=0;/ 用此数来区分输出的式子是否是第一个数字,是第一个flag 就为 0,不是第一个式子flag 就为 1for (int i=20;i>1;i -)if

4、 (ai)/ 系数不为0if (ai>0)/ 系数大于0 的情况if (ai=1)/ 系数等于1 的情况if (flag=0)/ 输出的式子是第一个式子printf("x%d",i);flag=1;else printf("+x%d",i); /输出的式子不是第一个式子else/ 系数大于1 的情况if (flag=0)printf("%dx%d",ai,i);flag=1;else printf("+%dx%d",ai,i);else/ 系数小于if (ai= -1)printf(" -x%d&q

5、uot;,i);0 的情况else printf("%dx%d",ai,i);if (a1)if (a1>0)if (a1=1)if (flag=0)printf("x");flag=1;else printf("+x");elseif (flag=0)printf("%dx",a1);flag=1;else printf("+%dx",a1);elseif (a1= -1)printf(" -x");elseprintf("%dx",a1);if (a0>0)if (flag=0)printf("%d",a0);flag=1;elseprintf("+%

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论