What OS are you programming for?
GotoXY windows console tutorial
Using Arrow Keys Tutorial
As for the cursor, I don't believe you can change it's shape but you can turn it off and then write want you want to the screen and that would have the same effect. For windows this is done:
EDIT: My bad I didn't read the OP start date.
hOut = GetStdHandle(STD_OUTPUT_HANDLE);
ConCurInf.dwSize = 10;
ConCurInf.bVisible = FALSE;