the first and second question , you can find a good answer on the internet !
In general, we use stepper motor for robotics application and home automation, they are small motor with not enought torque for complex industrial use.
The main strenght for a stepper motor is his precision, it's designed to be controlled step by step and for exemple if you control it for one loop it turn 7,5° so when we program our motor we know exactly when it will stop and in which position.
AC motor are the most powerfull and then DC for home applications or small industrial applications.
// small exemple for controlling a stepper motor connected to the first 4 pins of
//PORTB PIC microcontroller.
do
{
PORTB = 0x09;
delay_ms(100);
PORTB = 0x03;
delay_ms(100);
PORTB = 0x06;
delay_ms(100);
PORTB = 0x0C;
delay_ms(100);
}
while(1);