case 3:

struct NODE *front,*rear,*temp;

rear = (struct NODE *)malloc(sizeof(struct NODE));

front = rear;

エラーの周囲はこんな感じなのでセミコロンではないと思います。