MOOC浙大--翁恺老师的C语言编程练习7-1(多项式加法)
题目内容:
一个多项式可以表达为x的各次幂与系数乘积的和,比如:
2x6+3x5+12x3+6x+20
现在,你的程序要读入两个多项式,然后输出这两个多项式的和,也就是把对应的幂上的系数相加然后输出。
程序要处理的幂最大为100。
输入格式:
总共要输入两个多项式,每个多项式的输入格式如下:
每行输入两个数字,第一个表示幂次,第二个表示该幂次的系数,所有的系数都是整数。第一行一定是最高幂,最后一行一定是0次幂。
注意第一行和最后一行之间不一定按照幂次降低顺序排列;如果某个幂次的系数为0,就不出现在输入数据中了;0次幂的系数为0时还是会出现在输入数据中。
输出格式:
从最高幂开始依次降到0幂,如:
2x6+3x5+12x3-6x+20
注意其中的x是小写字母x,而且所有的符号之间都没有空格,如果某个幂的系数为0则不需要有那项。
输入样例:
6 2
5 3
3 12
1 6
0 20
6 2
5 3
2 12
1 6
0 20
输出样例:
4x6+6x5+12x3+12x2+12x+40
自我批评一下:代码太臃肿了,应该可以简化
代码过了题目检测,但求简化指导
#include <stdio.h>
int main()
{ int n=0,t=0;int A[101]={0},B[101]={0},C[101]={0};
//AB用来储存输入的多项式,n为数组下标对应多项式的指数,数组内容为系数
//t用来判断计算结果是否为0do{scanf("%d",&n);scanf("%d",&A[n]);}while(n!=0);do{scanf("%d",&n);scanf("%d",&B[n]);}while(n!=0);for(n=0;n<=100;n++){C[n]=A[n]+B[n];}
//数组遍历结束n=100;while(n>0){if(C[n]!=0){printf("%dx%d",C[n],n);n--;t=1;break;}
//第一项前没有+-所以我单独输出了else{n--;}}
//没有第一个系数不为0项,t=0if(t==0){printf("0");}else{do{if(C[n]!=0){if(C[n]>0){printf("+");}else{printf("-");C[n]=-C[n];}
//+-号的输出switch (n) {case 0:printf("%d",C[n]);break;case 1:if(C[n]!=1)printf("%dx",C[n]);elseprintf("x");break;default:if(C[n]!=1)printf("%dx%d",C[n],n);elseprintf("x%d",n);break;}
//switch用来判断指数的特殊情况,if用来判断系数的特殊情况}n--;}while(n>=0);}return 0;
}
MOOC浙大--翁恺老师的C语言编程练习7-1(多项式加法)相关推荐
- 中国大学Mooc浙大翁恺老师《零基础学Java语言》编程作业(续)(5~ 7)
感谢中国大学Mooc平台给我学习的机会,感谢翁恺老师深入浅出的讲解. 写此文为纪念我从无到有的学习和成长.便于以后回顾. 此答案仅供参考. 提交作业时需把 public class Homework_ ...
- 中国大学Mooc浙大翁恺老师《零基础学Java语言》编程作业
感谢中国大学Mooc平台给我学习的机会,感谢翁恺老师深入浅出的讲解. 写此文为纪念我从无到有的学习和成长.便于以后回顾. 另外: 此答案仅供参考,用于启发没有思路的同学.切勿照搬,自欺欺人. 提交作业 ...
- c++基础入门(根据浙大翁恺老师视频整理)
把以前的笔记搬上来一下 根据浙大翁恺老师视频整理 https://www.bilibili.com/video/BV1yQ4y1A7ts?p=2 01第一个c++程序 02什么是对象 通过操作访问数据 ...
- 浙大翁恺老师C语言教程自学笔录-计算机和编程语言
总结 想让计算机解决问题得提供方式而非传达意愿,例如:找到蛋糕.找到工具.切开蛋糕,而非告诉它帮我切开蛋糕. 编程语言不是人与计算机交谈的语言,而是人通过编程语言单方面向计算机发起命令. 由计算机显出 ...
- 【MOOC浙大翁恺】C语言学习笔记
第一章 C语言介绍 目录 第一章 C语言介绍 1.1 基本的程序框架 1.2 printf 1.2.1 输出 1.2.2 计算 1.3 scanf 1.4 变量 1.4.1 变量定义的格式 1.4.2 ...
- 翁恺老师全套C语言课程笔记(本菜鸟正在学习)
... 一些程序英语单词 void/ vɔɪd / n.空白 array / əˈreɪ / n.数组 string / strɪŋ / n.串 character n. ...
- 浙大翁恺pat练习题_单词长度(翁恺老师C语言入门第八周测试题1)
[更新]:写好程序后没在mooc的线上测试系统跑过,有部分格式上的bug,目前已经更新了,线上测试通过. 题目内容: 你的程序要读入一行文本,其中以空格分隔为若干个单词,以'.'结束.你要输出这行文本 ...
- C语言程序设计笔记(浙大翁恺版) 第九周:指针
按照中国大学MOOC上浙江大学翁恺老师主讲的版本所作,B站上也有资源.原课程链接如下: https://www.icourse163.org/course/ZJU-9001 由于是大三抽空回头整理的, ...
- C语言程序设计笔记(浙大翁恺版) 第二周:计算
按照中国大学MOOC上浙江大学翁恺老师主讲的版本所作,B站上也有资源.原课程链接如下: https://www.icourse163.org/course/ZJU-9001 由于是大三抽空回头整理的, ...
最新文章
- 【设计模式】依赖倒转原则
- 解决样本不平衡问题的奇技淫巧 汇总
- matlab 小技巧
- 【Homework】银行存取款业务
- Spring,ehcache整合报错
- 解决 :sudo:/etc/sudoers 可被任何人写
- MSPlus DatePicker WebControl FreeVersion 1.1.0906 发布啦!
- 日程表、学生课表插件
- solaris系统安装oracle数据库,solaris10下安装oracle11gr2详解!
- 冰点还原离线激活_冰点还原密钥,小编告诉你如何激活冰点还原
- 云场景实践研究第79期:熊猫直播
- LAB,RGB,CMYK区别
- tx2 安装 Anaconda
- 无线产品的‘接收灵敏度’、‘无线协商速率’、‘发射功率’、‘无线干扰’
- 用c++语言写1加到100,C++ 语言实现1加到100(初学者)
- css3实现图片旋转木马效果
- ssm+vue企业员工考勤请假网上办公OA自动化系统java
- 打印机如何打印白色_打印机可以打印白色吗?
- 联邦学习 + 脏数据+Approaches to address the data skew problem in federated learning
- 关于在win8下面安装虚拟机出现的一些问题
热门文章
- 大学生如何寻找实习机会
- 中科院、腾讯、深圳明源研发团队管理经验分享
- 点击div外区域隐藏div操作(嵌套iframe页面)
- react实现div隐藏_React 点击按钮显示div与隐藏div
- 合工大计算机专业支持跨考吗,2011年合肥工业大学计算机专业复试流程_跨考网...
- Activiti使用指南
- 洞察了真正的“智能未来”,百度云ABC如何为主导“第四产业”谋局?
- Linux服务器绑定mac地址,linux下绑定mac地址
- Gremlins.js – 模拟用户随机操作的 JS 测试库
- 速普创新将人工智能引入孵化器产业