Why are you having a cin for a move that is not made by a human?
Add the final else as choice2=rand()%9. Also, you need to make another for the fact that the computer should know to block winning situations, but only let it go to that whole rigmarole if it passes a rand()%100 greater than a certain number (otherwise it would be unbeatable, no fun.) If it fails to be greater than a certain number, then make it run the random.
Good recursion under the if(correctdrop()), but I would suggest calling the computer's choice choice2. Just a preference.
Next time, though, try making a program that can play Calvinball. O_o