doing sin program without (math.h)

my instructor decided to pull a mean joke on us. He want us to program sin with out using the math.h. I understand that I can do this with a series such as: sin = x!/1- x3/3!+ x5/5! etc. ( I think I got that right lol) But I can't figure out how to put this in my program. and to show tolerances of +-.01.

/*******************THE EXECUTABLE PART OF THE PROGRAM ********************/

/******* Print the Opening Message *******/

msg1();

/******* Computations ******/
while (ans == 'y'|| ans == 'Y')
{

printf ("\n\n What number do you want to use?\n\n");
scanf ("%lf%c", &param, &dummy);
result= sin(param*PI/180);
printf ("The sin of %lf is %lf\n", param, result);
printf("\n\n Would you like to enter another number? (Y for yes)(N for no)\n\n");
scanf("%c", &ans);

}

printf ("\n\n Thank you for using me to solve sine in radians, GOOD BY!! \n\n");
scanf ("%c", &ans);

return 0;

Where do I begin because Honestly I have looked but could not find a similar issue. the one I did find was just wrong. So once again I ask for your assistance in this matter. thanks in advance. not necessarily looking for u to do it for me but good guidance is needed.

As long as x is small, the terms fairly quickly become smaller.
The sign of each term alternates, plus, minus, plus, minus ....
numerator is
x
x*x*x
x*x*x*x*x
x*x*x*x*x*x*x

denominator is a factorial, that is
1
1*2*3
1*2*3*4*5
1*2*3*4*5*6*7

etc

so you find each term from the previous one, rather than doing the whole thing from scratch each time.

first term = x
Next term = first term * (-1) * (x*x) / (2 * 3)
Next term = 2nd term * (-1) * (x*x) / (4 * 5)
and so on.

The only real problem is knowing when to stop. You can take a fairly pragmatic approach here, simply use a fixed number of terms to begin with. Or you could compare the size of the latest term with the total so far, to see whether it is too small to matter (since a float or double has a limited precision).

printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" );
printf("\n EE 150 \n" );
printf("\n Here you should put a message that the user");
printf("\n can read to know what the program is about" );
printf("\n and what to do to use it. \n\n\n\n\n\n\n\n" );

. So far I had been lucky and actually happy that it works. lol but for some reason the instructor decided to throw a curve ball. He wants it to read positive and negative numbers. It took me for ever to get it to read positive numbers. I have read a couple of tutorials and found that I could use a long int. for abs or some how use fabs again to make this happen. How could I implement absolute value in my code with out changing to much.

Now as for the previous comment, would I be able to make it read negative numbers like this also.