因为C语言中x的二次方用x*x表示或者用函数pow(x,2)表示
衡山网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、响应式网站等网站项目制作,到程序开发,运营维护。创新互联公司2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
(需要包含头文件#includemath.h)
所以y=x^2在C语言中不是表示x的二次方,而是x按位异或2,因此结果不对.
另外,题目要求输入一个实数,所以x,y要被定义为double型,
输入输出格式符%d要改成%lf
改正后的程序如下(见图,改动的地方见注释)
#includestdio.h
void main()
{
double x,y;//这里把int改成double
printf("输入一个x值:\n");
scanf("%lf",x);//这里把%d改成%lf,去掉"x="
y=x*x;//这里把y=x^2;改成y=x*x;
printf("x=%lf,y=%lf\n",x,y);//这里把%d改成%lf
}
# include stdio.h
# include math.h
int main ( )
{
int a,b,c;
double x1,x2,dt;
printf ( "please input a,b,c \n");
scanf ("%d,%d,%d",a,b,c );
dt = b*b - 4*a*c;
if ( dt 0)
{
x1 = (-b + sqrt(dt)) / (2*a);
x2 = (-b - sqrt(dt)) / (2*a);
printf ( "TWO NUMBER x1 = %f\n x2 = %f\n",x1,x2);
}
else if (dt ==0)
{
x1 = (-b) / (2*a);
x2 = x1;
printf ("ONE NUMBER x1 = x2 = %f\n",x1);
}
else
{
printf (" NO NUMBER ");
}
return 0;
math.h文件中含有乘方(包括开方)的库函数
表示为:pow(x,y)
其中x和y都是双精度浮点(double)型,x是底数,y是指数(如果是小数即为开方)
表示为:double pow(double x, double y);
拓展资料
C语言pow()函数:求x的y次方(次幂)
头文件:
pow() 函数用来求 x 的 y 次幂(次方),其原型为:
pow()用来计算以x 为底的 y 次方值,然后将结果返回。设返回值为 ret,则 ret = xy。
实例:
输出结果:
C语言sqrt()函数:求给定值的平方根
头文件:
sqrt() 用来求给定值的平方根,其原型为:
实例计算200 的平方根值。
输出结果:
#include stdio.h
int main(void)
{
double a,b,c,d,e;
double x1,x2;
printf("请输入ax^2+bx +c = 0中a,b,c的值");
scanf("%lf,%lf,%lf",a,b,c);
e = b * b - 4 * a * c;
if (e0) {
printf("无解,请重新输入\n");
scanf("%lf,%lf,%lf",a,b,c);
}
printf("输入正确,正在计算....\n");
d = sqrt(e);
x1 = (-b + d)/(2 * a);
x2 = (-b - d)/(2 * a);
printf("x1=%f\n",x1);
printf("x2=%f\n",x2);
return 0;
}
#includestdio.h
#includemath.h
void m(float a,float b,float c)
{
double x1,x2;
x1=(-b+sqrt(b*b-4*a*c))/(2*a);
x2=(-b-sqrt(b*b-4*a*c))/(2*a);
printf("方程的根是%.2lf和%.2lf",x1,x2);
}
void n(float a,float b,float c)
{
double x;
x=(-b)/(2*a);
printf("方程的根为%.2lf",x);
}
void f(float a,float b,float c)
{
printf("方程无实数根\n");
}
main()
{
float a,b,c;
printf("请输入a,b,c的值\n");
scanf("%f%f%f",a,b,c);
if(b*b-4*a*c0)
m(a,b,c);
if(b*b-4*a*c==0)
n(a,b,c);
if(b*b-4*a*c0)
f(a,b,c);
}