hi, i was writing a c program for my class assignment, and i got stuck. i paste it below.
.
help plz!!

it appears to me that the program structure is ok, but when i run it, it does'nt give any output. i have also tried by taking the last 'printf' statement out of the for loop, but then the out put is not what i expected. it prints the value of x as -10 continously 50 times./*This program calculates the roots of the equation x^3-3x^2+5x-10=0
by two separate methods, Bisection method and Newton-Rhapson method*/
#include <stdio.h>
#include <math.h>
void bisect(void);
void newton(void);
main()
{
int choice;
printf("Choose the method you want to use\n");
printf("1:Bisection method\n");
printf("2:Newton-Rhapson\n");
scanf("%d", &choice);
/*switch(choice) {
case 1:*/
bisect();
/*case 2:
newton();*/
}
void bisect()
{
float x1,x2,x0,f1,f2,f0;
int count;
printf("Enter the range within which the calculation is to be carried out : ");
scanf("%f %f", &x1, &x2);
for(count=1;count<=50;count++)
{
f1=x1*x1-4*x1-10;
f2=x2*x2-4*x2-10;
if(f1*f2>0)
{
x0=(x1+x2)/2.0;
f0=x0*x0-4*x0-10;
printf("Iteration %d : x = %f \n", count, x0);
if(f1*f0<0)
{
x2=x0;
}
else
{
x1=x0;
f1=f0;
}
if(fabs((x2-x1)/x2)<.0005)
{
printf("\nThe required root of the equation is %f", x1);
break;
}
}
}
}
help plz!!