1002 A+B for Polynomials (25)

Polynomials多项式,exponents指数,coefficients系数

输入:两行数据,每行表示一个多项式:第一个数字表示非零项的数目,后面每两个数表示一项,分别表示幂次和系数。

输出:两个多项式的和,格式与输入一样

思路一:

1.定义一个double类型的数组p[1111](长度大于1000),其中片[n]表示幂次为n的项的系数,初始化为0。定义一个int型的变量count表示非零项的个数,初始化为0;

2.先按输入格式读入第一个多项式,再读入第二个多项式,并将对应相同幂次项的系数直接加到第一个多项式上;

3.循环搜索p[]数组中值不为0的个数,赋值给count,作为第一个数字输出;再通过循环以此从高位到低位进行搜索数组中不为0值,将对应的位数和值分别按格式输出(printf("%d %.1f",i,p[i]))。

 #include <stdio.h>
#include<string.h>
//输入:两行数据,每行表示一个多项式:第一个数字表示非零项的数目,
//后面每两个数表示一项,分别表示幂次和系数。
//输出:两个多项式的和,格式与输入一样 int main(){ const int MAX_N=;
double a=0.0;
int k,n=,count=,i;//k:输入的非零项数,n:幂次,a:系数,count:和的非零项数
double p[]={};//声明时使用{0}初始化为全0
//double p[MAX_N];
//memset(p,0,MAX_N);//使用memset方法,注意要加string.h头文件 // for(i=MAX_N-1;i>=0;i--){
// printf("%.1f",p[i]);
// } //输入第一行数据
scanf("%d",&k);
for(i=;i<k;i++){
scanf("%d %lf",&n,&a);
p[n]+=a;
} //输入第二行数据
scanf("%d",&k);
for(i=;i<k;i++){
scanf("%d %lf",&n,&a);
p[n]+=a;
} for(i=;i<MAX_N;i++){
if(p[i]){
count++;
}
} printf("%d",count);
for(i=MAX_N-;i>=;i--){
if(p[i]){
printf(" ");
printf("%d %.1f",i,p[i]);
}
} return ;
}

碰到的报错:

const int MAX_N=1000;

double p[MAX_N]={0};

[Error] variable-sized object may not be initialized [错误]可变大小的对象不能初始化;

正确写法:double p[1000]={0};

PAT-A1002的更多相关文章

  1. PAT A1002 A+B for Polynomials(25)

    AC代码 转载自https://www.cnblogs.com/zjutJY/p/9413766.html #include <stdio.h> #include<string.h& ...

  2. PAT题目AC汇总(待补全)

    题目AC汇总 甲级AC PAT A1001 A+B Format (20 分) PAT A1002 A+B for Polynomials(25) PAT A1005 Spell It Right ( ...

  3. 【PAT】A1002 A+B for Polynomials

    仅有两个要注意的点: 如果系数为0,则不输出,所以输入结束以后要先遍历确定系数不为零的项的个数 题目最后一句,精确到小数点后一位,如果这里忽略了,会导致样例1,3,4,5都不能通过

  4. PAT甲级——A1002 A+B for Polynomials

    This time, you are supposed to find A+B where A and B are two polynomials. Input Specification: Each ...

  5. PAT甲级题解分类byZlc

    专题一  字符串处理 A1001 Format(20) #include<cstdio> int main () { ]; int a,b,sum; scanf ("%d %d& ...

  6. 《转载》PAT 习题

    博客出处:http://blog.csdn.net/zhoufenqin/article/details/50497791 题目出处:https://www.patest.cn/contests/pa ...

  7. PAT Judge

    原题连接:https://pta.patest.cn/pta/test/16/exam/4/question/677 题目如下: The ranklist of PAT is generated fr ...

  8. PAT/字符串处理习题集(二)

    B1024. 科学计数法 (20) Description: 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+ ...

  9. PAT 1041. 考试座位号(15)

    每个PAT考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位.正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座 ...

  10. PAT 1040. 有几个PAT(25)

    字符串APPAPT中包含了两个单词"PAT",其中第一个PAT是第2位(P),第4位(A),第6位(T):第二个PAT是第3位(P),第4位(A),第6位(T). 现给定字符串,问 ...

随机推荐

  1. mongodb 3.4 学习 (二)命令

    # 使用或切换数据库 use <database name> # 显示所有数据库 show dbs # 显示所有collection show collections # 显示所有user ...

  2. HCNA配置手工负载分担模式链路聚合

    一.配置手工负载分担模式链路聚合 链路聚合(Link Aggregation)是将—组物理接口捆绑在一起作为一个逻辑接口来增加带宽的一种方法,又称为多接口负载均衡组(Load Sharing Grou ...

  3. zan-framework mysql连接

    ①根据文档内容要配置sqlmap连接池的读写白名单 http://doc.zanphp.io/zh/libs/connection_pool.html 示例代码 // demo.demo.demo_s ...

  4. 基于配置的Spring AOP

    前面几篇学习了Spring的依赖注入,这篇开始学习另一个核心功能——面向切面编程AOP. 通过本文,你可以了解到: 1 Spring xml规范 2 通过配置文件实现面向切面编程 3 对比与传统AOP ...

  5. web中的cookie管理

    本篇是以JSP为背景介绍,但是在web开发中也是相同的原理. 什么是cookie 由于http是一种无状态的协议,因此服务器收到请求后,只会当做一次新的请求.即便你重复发送了1000次同样的请求,这1 ...

  6. Android进阶笔记13:ListView篇之ListView刷新显示(全局 和 局部)

    一.ListView内容变化后,动态刷新的步骤(全局刷新): (1)更新适配器Adapter数据源:(不要使用匿名内部类) (2)调用适配器Adapter的刷新方法notifyDataSetChang ...

  7. 使用paramiko的问题记录

    用paramiko时遇到问题,异常如下: 解决方法记录如下: 更新gmp版本: wget https://ftp.gnu.org/gnu/gmp/gmp-6.0.0a.tar.bz2 tar -xvj ...

  8. 【洛谷P3469】[POI2008]BLO-Blockade

    BLO-Blockade 题目链接 若一个点为割点:统计出每个子树的大小,两两相乘再相加, 再加上n-1,为这个点与其他点的拜访数, 因为拜访是互相的,最后再乘二即可 若一个点不是割点:只有(n-1) ...

  9. sudoers文件解析 转自:http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=1971013

    今天在用户组中新加了一个普通用户,开始这个用户没有sudo权限,于是通过sudo visudo修改了sudo的配置文件,赋予了普通用户的root权限.后来想着能不能将/etc/sudoers文件的访问 ...

  10. java和c通信相关的数据类型转换

    利用socket进行网络传输的时候往往需要将int转换为bytes,将string转换为bytes以及一些其他类型的数据转换 java和c类型的区别: 变量类型 C中字节数 Java中字节数 int ...