zoukankan      html  css  js  c++  java
  • PATA1002

    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]))。

     1 #include <stdio.h>
     2 #include<string.h>
     3 //输入:两行数据,每行表示一个多项式:第一个数字表示非零项的数目,
     4 //后面每两个数表示一项,分别表示幂次和系数。
     5 //输出:两个多项式的和,格式与输入一样
     6 
     7 int main(){
     8 
     9     const int MAX_N=1111;
    10     double a=0.0;
    11     int k,n=0,count=0,i;//k:输入的非零项数,n:幂次,a:系数,count:和的非零项数
    12     double p[1111]={0};//声明时使用{0}初始化为全0
    13     //double p[MAX_N];
    14     //memset(p,0,MAX_N);//使用memset方法,注意要加string.h头文件 
    15     
    16 //    for(i=MAX_N-1;i>=0;i--){
    17 //        printf("%.1f",p[i]); 
    18 //    }    
    19     
    20     //输入第一行数据 
    21     scanf("%d",&k);
    22     for(i=0;i<k;i++){
    23         scanf("%d %lf",&n,&a);
    24         p[n]+=a;
    25     }
    26     
    27     //输入第二行数据 
    28     scanf("%d",&k);
    29     for(i=0;i<k;i++){
    30         scanf("%d %lf",&n,&a);
    31         p[n]+=a;
    32     }
    33     
    34     for(i=0;i<MAX_N;i++){
    35         if(p[i]){
    36             count++;
    37         }
    38     } 
    39     
    40     printf("%d",count);
    41     for(i=MAX_N-1;i>=0;i--){
    42         if(p[i]){
    43             printf(" ");
    44             printf("%d %.1f",i,p[i]);
    45         }
    46     }
    47     
    48     return 0;
    49 } 

    碰到的报错:

    const int MAX_N=1000;

    double p[MAX_N]={0};

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

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

  • 相关阅读:
    Android TouchEvent 分发流程
    python基础7之python中常用的模块的总结
    C# 压缩数据传输
    C# winFrom 加载BMP 底图
    使用jQuery Ajax功能的时候需要注意的一个问题
    jQuery DOM的操作
    C# CookieExtension 使用Cookie的扩展工具类
    Web Service测试工具小汇 转
    C# 把DT 的数据转换成 list<Model> EntityByEmit
    Web下 MD5 加密与解密
  • 原文地址:https://www.cnblogs.com/zjutJY/p/9413766.html
Copyright © 2011-2022 走看看