c語言無實根
① c語言求一元二次方程無實根
b^2改成b*b。C語言的^是按位異或運算,不是求平方。
② C語言中求方程的根
如圖:
③ c語言中,無實根怎麼表示
首先在 main()函數 上邊加個#include "math.h" 因為開根號屬於 數學函數里邊的函數,要使用根號就要加上#inculde "math.h",
然後在你要開根號的數的前邊加個 sqrt,就可以了
例如
#inculde "math.h"
main()
{ float a,b;
printf("please input a nuberm:");
scanf("%f",&a);
b=sqrt(a);
printf("%f\n",b);
}這個程序就是 讓 用戶輸入個數字,然後輸出原數值的開根號後的結果
④ C語言編程「一元二次方程求解問題」,為啥總是顯示「無實根」😭
scanf("%lf,%lf,%lf",&a,&b,&c);
double類型對應格式說明符%lf
⑤ C語言 求方程aX^2+bX+c=0解,其中a.b.c由鍵盤輸入。若方程無實根,輸出沒有實數根,否則輸出實根
#include <stdio.h>
#include <math.h>
void main()
{
float a,b,c;
printf("input a,b,c:");
scanf("%f%f%f",&a,&b,&c);
if (b*b-4*a*c>=0)
{
if (b*b-4*a*c)\
printf("x1=%.2f,x2=%.2f",(-b+sqrt(b*b-4*a*c))/(2*a),(-b-sqrt(b*b-4*a*c))/(2*a));
else
printf("x=%.2f",(-b+sqrt(b*b-4*a*c))/(2*a));
}
else
printf("\n無實數根\n");
}
⑥ C語言問題 求一元二次方程的解· 為什麼我的程序運行時一直有問題啊,只會出現沒實根的結果
#include<stdio.h>
#include<math.h>
float x1,x2,tell,p,q;
void main()
{void bigger(float x,float y); //void類型
void equal(float x,float y);
void smaller(float x,float y);
float a,b,c;
printf("input a,b,c:");
scanf("%f%f%f",&a,&b,&c); //這里不要用逗號
tell=b*b-4*a*c;
printf("The root is:\n");
if(tell>0)
{
bigger(a,b);
printf("x1=%f x2=%f",x1,x2);
}
else if(tell==0)
{
equal(a,b);
printf("x1=%f x2=%f",x1,x2);
}
else if(tell<0)
{
smaller(a,b); //如果是虛數根,函數里已經列印了,不要再列印
}
}
void bigger(float x,float y)
{
x1=(-y+sqrt(tell))/(2*x);
x2=(-y-sqrt(tell))/(2*x);
}
void equal(float x,float y)
{
x1=x2=(-y)/(2*x);
}
void smaller(float x,float y)
{
p=-y/(2*x);
q=sqrt(-tell)/(2*x);
printf("x1=%f+%fi x2=%f-%fi\n",p,q,p,q);
}
⑦ c語言 總是出現「方程沒有實根」
scanf("%f%f%f",&a,&b,&c);修改為
scanf("%lf%lf%lf",&a,&b,&c);
%lf是讀取double的
⑧ C語言關於求方程根的問題
#include <stdio.h>
#include<math.h>
int main(){
int a,b,c;
float s,t,r,x1,x2;
printf("please input a b c:"); // 輸入格式a b c 之間無逗號,這里提示 也不要寫逗號
scanf("%d%d%d",&a,&b,&c);
// a==0 和 b==0 的情況處理
if (a==0) {
if (b==0) {printf("no result\n"); return 0;}
x1= -c / (float) b;
printf("x1=%f\n",x1);
return 0;
};
t=b*b-4*a*c;
if(t<0)
printf("無實根!\n");
else {
s= (float) b / (-2*a); // 不能整型除以整型,要加 (float)
r= (sqrt(t)) / (2*a);
x1=s+r; // 用分號不用逗號是好習慣
x2=s-r;
printf("x1=%f\tx2=%f\n",x1,x2); // 注意格式 %f 不是 %d
};
return 0;
}