C Program also avilable as C Program to Find Roots of a Quadratic Equation

```import java.io.*;
{
public static void main(String args[]) throws IOException
{
int a,b,c;
System.out.println("Enter a,b,c values: ");

if((a==0)&&(b==0)&&(c==0))
{
System.out.println("Enter atleast two non-zero co-efficients");
}
else
{
float r1=0,r2=0;
if(a==0)
{
r1= (float)-c/b;
System.out.println("The roots are:"+r1);
}
else
{
float d=(b*b)-(4*a*c);

if(d<0)
{
System.out.println("Roots are imaginary");
float real=(float)(-b)/(2*a);
float img=(float)(Math.sqrt(Math.abs(d)))/(2*a);
System.out.println("r1="+real+"+i"+img);
System.out.println("r2="+real+"-i"+img);
}
else
{
r1=(float)(-b+Math.sqrt(d))/(2*a);
r2=(float)(-b-Math.sqrt(d))/(2*a);
if(d==0)
{
System.out.println("Roots are real and equal");
}
else
{
System.out.println("Roots are real and different");
}
System.out.println("r1="+r1);
System.out.println("r2="+r2);
}

}
}
}
}
```

OUTPUT:

```Enter a,b,c values:
1
4
1
Roots are real and different
r1= -0.2679492
r2= -3.732051
```