You can't put glRotate calls between glBegin and glEnd.
Only a subset of GL commands can be used between glBegin and glEnd. The commands are glVertex, glColor, glIndex, glNormal, glTexCoord, glEvalCoord, glEvalPoint, glMaterial, and glEdgeFlag.
See http://www.cs.uccs.edu/~ssemwal/glman.html for the full description.
To answer your question, if you only want to rotate a single vertex you will need to do that manually before calling glVertex3f.
In your specific case (rotation about the x axis) the code would look like this:
glBegin(GL_TRIANGLES);
// Rotate only the vertex <x,y,z> about the x axis an angle of theta.
glVertex3f(x, y*cos(theta) - z*sin(theta), y*sin(theta) + z*cos(theta));
glVertex3f(1,0,0);
glVertex3f(0,1,0);
glEnd();
If you need to rotate about a different axis or a generic axis then see the wikipedia page about 3D rotation matrices: http://en.wikipedia.org/wiki/Rotation_matrix#Basic_rotations.