hi leute wir müssen für die schule ein programm das aus den variablen a b und c von ax²+bx+c die lösungsmenge(n) ausrechnet jetzt wollt ich fragen ob ihr mal drüber guckt ob das alles richtig ist bzw ob ich noch irgent ein fall vergessen hab oder ir irgent was anders machen würdet?

Code:
#include "stdafx.h"
#include <stdio.h>
#include <math.h>


int main()
{
	// Deklarationsteil
	double a,b,c,diskriminante,loesungsmenge1,loesungsmenge2,zwischenrechnung;
	int leeremenge,anzahlloesungen;

	leeremenge=0;

	// Eingabeteil
	printf("Geben sie a ein\n");
	scanf("%lf",&a);
	fflush(stdin);

	printf("Geben sie b ein\n");
	scanf("%lf",&b);
	fflush(stdin);

	printf("Geben sie c ein\n");
	scanf("%lf",&c);
	fflush(stdin);

	// Verarbeitungsteil
	zwischenrechnung=(c/(-a));
	diskriminante=(b*b)-(4*a*c);

	if(a!=0 && b!=0 && c!=0)
	{
		if(diskriminante==0)
		{
			loesungsmenge1=(-b)/(2*a);
			anzahlloesungen=1;
		}
		else if(diskriminante<0)
		{
			leeremenge=1;
		}
		else
		{
			loesungsmenge1=(-b-(sqrt((b*b)-(4*a*c))))/(2*a);
			loesungsmenge2=(-b+(sqrt((b*b)-(4*a*c))))/(2*a);
			anzahlloesungen=2;
		}
	}
	else if(a==0 && b!=0)
	{
		loesungsmenge1=(-c)/b;
		anzahlloesungen=1;
	}
	else if(zwischenrechnung>=0 && a!=0 && c!=0)
	{
		loesungsmenge1=sqrt(zwischenrechnung);
		loesungsmenge2=-loesungsmenge1;
		anzahlloesungen=2;
	}
	else
	{
		leeremenge=1;
	}

	// Ausgabeteil
	if(leeremenge==1)
	{
		printf("Die Loesungsmenge ist Leeremenge\n");
	}
	else if(anzahlloesungen==1)
	{
		printf("x=%f\nL={%f}\n",loesungsmenge1,loesungsmenge1);
	}
	else
	{
		printf("x1=%f\nx2=%f\nL={%f;%f}\n",loesungsmenge1,loesungsmenge2,loesungsmenge1,loesungsmenge2);
	}

	return 0;
}
schon mal danke im vorraus.