error C2297: '+' : illegal, right operand has type 'double (__cdecl *)(double )'
帮忙看一下怎么改。老师讲了半天课什么都没教就让我们写方程,百度了半天就剩下这个不知道怎么改了……看到说要用pow(a,b)的,但是不会用,用了还是报错。#include<...
帮忙看一下怎么改。老师讲了半天课什么都没教就让我们写方程,百度了半天就剩下这个不知道怎么改了……看到说要用pow(a,b)的,但是不会用,用了还是报错。
#include <stdio.h>
#include <math.h>
double loga(double n, double base);
int main(void)
{
double a,x,y,m,n;
printf("input a,x:");
scanf("%1f,%1f",&a,&x);
y=a^5+sin(a*x)+log(exp(a+x))+exp^a*x;
printf("y=%f\n",y);
} 展开
#include <stdio.h>
#include <math.h>
double loga(double n, double base);
int main(void)
{
double a,x,y,m,n;
printf("input a,x:");
scanf("%1f,%1f",&a,&x);
y=a^5+sin(a*x)+log(exp(a+x))+exp^a*x;
printf("y=%f\n",y);
} 展开
2个回答
展开全部
#include <stdio.h>
#include <math.h>
double loga(double n, double base);//无用声明
int main(void)
{
double a,x,y,m,n;
printf("input a,x:");
scanf("%lf,%lf",&a,&x);//你把l写出1了 对于double类型,要用lf,而不是f
y=pow(a,5)+sin(a*x)+log(exp(a+x))+exp(a*x);
//对于log(exp(a+x)),实际上等于a+x,你还没弄懂你想写什么数学公式。
printf("y=%.2f\n",y);
return 0;//应当有返回,否则会报错
}
附:第一,你不懂函数的使用方法;pow(a,b)a,b就是你的参数,而不是想当然写^,你要回去看书。
第二,你那条公式你也没弄懂就乱写
#include <math.h>
double loga(double n, double base);//无用声明
int main(void)
{
double a,x,y,m,n;
printf("input a,x:");
scanf("%lf,%lf",&a,&x);//你把l写出1了 对于double类型,要用lf,而不是f
y=pow(a,5)+sin(a*x)+log(exp(a+x))+exp(a*x);
//对于log(exp(a+x)),实际上等于a+x,你还没弄懂你想写什么数学公式。
printf("y=%.2f\n",y);
return 0;//应当有返回,否则会报错
}
附:第一,你不懂函数的使用方法;pow(a,b)a,b就是你的参数,而不是想当然写^,你要回去看书。
第二,你那条公式你也没弄懂就乱写
追问
老师只教了定义变量,赋值,输出和判断语句,根本没教这些,书上都没。
这个方程,你看怎么写?
y=a^5+sinax+ln(a+x)+e^a×x
追答
汗,你哪本什么书。
对于你的自然数e,你自己定义个变量,double e = 2.718281828;
方程应该就这样,如你是(e^a)*x的话
pow(a,5)+sin(a*x)+log(a+x)+pow(e,a)*x
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询