首页 > 解决方案 > 二进制 + c 编程的无效操作数

问题描述

嗨,我在 c 中找到多项式的总和,没有大量,并且我有这个错误说“二进制的无效操作数+(有'float()(int,int,int)'和'float()(int,int , int)'"

这是代码

       #include <stdio.h>
       #include <stdlib.h>
       #include <math.h>
       float p6(int p6, int x, int a){         `function to find pow`
       p6=pow(x, 6);
       p6=a*p6;
       return p6;
       }
       float p5(int p5, int x, int a){          `small function`
       p5=pow(x, 5);
       p5=p5*a;
       return p5;   
       }
       float p4(int p4, int x, int a){
       p4=pow(x, 4);
       p4=a*p4;
       return p4;   
       }
       float p3(int p3, int a, int x){
       p3=pow(x, 3);
       p3=a*p3;
       return p3;   
       }
       float p2(int p2, int a, int x){
       p2=pow(x, 2);
       p2=a*p2;
       return p2;   
       }
       main (){                          `main function starts here`
       int i, a;
       double sum=0;
       float x;
       printf("x-iin utgiig oruul");     `value of x`
       scanf("%lf", &x);
       printf("a1-a6 toog oruul");      `value of coefficents`
       for(i=1; i<=6; i++){             `for coeffincents`
       scanf("%d", &a);
       }
       sum=p6+p5+p4+p3+p2+a*x;          `error occurs here`
       printf("%d", sum);
       system("pause");
       return 0;
       }

标签: ccompiler-errorsbinarypowpolynomial-math

解决方案


因为p6, p5, ... 是函数,所以你必须在 main 中进行函数调用。像这样的东西:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
float p6(int x, int a){         //`function to find pow`
    int p6=pow(x, 6);
    p6=a*p6;
    return p6;
}
float p5(int x, int a){          //`small function`
    int p5=pow(x, 5);
    p5=p5*a;
    return p5;
}
float p4(int x, int a){
    int p4=pow(x, 4);
    p4=a*p4;
    return p4;
}
float p3(int a, int x){
    int p3=pow(x, 3);
    p3=a*p3;
    return p3;
}
float p2(int a, int x){
    int p2=pow(x, 2);
    p2=a*p2;
    return p2;
}
int main (){                          //`main function starts here`
int i, a;
double sum=0;
float x;
printf("x-iin utgiig oruul");     //`value of x`
scanf("%f", &x);
printf("a1-a6 toog oruul");      //`value of coefficents`
for(i=1; i<=6; i++){             //`for coeffincents`
scanf("%d", &a);
}
sum=p6(x, a)+p5(x, a)+p4(x, a)+p3(x, a)+p2(x, a)+a*x;          //`error occurs here`
printf("%lf", sum);
system("pause");
return 0;
}

推荐阅读