c语言输入一元二次方程三个系数,C语言程序 一元二次方程
//求一元二次方程:ax2+bx+c=0(a≠0)的解
#include
#include
main()
{
int a,b,c;
double x1,x2,delta;
char ch;
printf("請依次輸入一元二次方程三個系數a,b,c的值:");
scanf("%d%d%d",&a,&b,&c);
delta=b*b-4*a*c;
if(delta>0)
{
x1=(-b+sqrt(delta))/(2*a);
x2=(-b-sqrt(delta))/(2*a);
printf("該一元二次方程有兩個不同的解: x1=%f,x2=%f\n",x1,x2);
}
else if(delta==0)
{
x2=x1=(-b)/(2*a);
printf("該一元二次方程有兩個相同的解: x2=x1=%f\n",x1);
}
else
printf("該一元二次方程無解!\n");
printf(" \n") ;
printf("是否繼續?(y/n)\n");
fflush(stdin); //清空緩沖區
ch=getchar(); //接收輸入字符
if(ch=='Y' || ch=='y') //判斷輸入字符并進行繼續或者退出操作
{
printf("繼續中......\n");
main(); //返回main函數
}
else
printf("退出操作!\n"); //什么也不做 自然退出
}
//求一元二次方程:ax2+bx+c=0(a≠0)的解
#include
#include
int main(void)
{
int a,b,c;
double x1,x2,delta;
char ch;
do{
printf("請依次輸入一元二次方程三個系數a,b,c的值:");
scanf("%d%d%d",&a,&b,&c);
delta=b*b-4*a*c;
if(delta>0)
{
x1=(-b+sqrt(delta))/(2*a);
x2=(-b-sqrt(delta))/(2*a);
printf("該一元二次方程有兩個不同的解: x1=%f,x2=%f\n",x1,x2);
}
else if(delta==0)
{
x2=x1=(-b)/(2*a);
printf("該一元二次方程有兩個相同的解: x2=x1=%f\n",x1);
}
else
printf("該一元二次方程無解!\n");
printf(" \n") ;
printf("是否繼續?(y/n)\n");
fflush(stdin);
//清空緩沖區。用來清空輸入緩存,以便不影響后面輸入的東西
ch=getchar();
}while(ch=='y'||ch=='Y');
printf("退出操作!\n"); //什么也不做 自然退出
}
總結
以上是生活随笔為你收集整理的c语言输入一元二次方程三个系数,C语言程序 一元二次方程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 欧阳小奇
- 下一篇: odoo10 请假单扩展