glRotatef
assumes that the angle is in degrees. sin
and cos
assumes it to be in radians. You can adapt your function as follows:
void RotateFigure(tNo *iniList, float angle)
{
float radians = angle * 3.1415926f / 180.0f;
float sine = sin(radians);
float cosine = cos(radians);
for(tNo *p = iniList->prox; p != NULL; p = p->prox)
{
float oldX = p->x, oldY = p->y;
p->x = oldX * cosine - oldY * sine;
p->y = oldX * sine + oldY * cosine;
}
glutPostRedisplay();
}