El error como tal por el que ese programa no funciona es el "1" que estás poniendo dentro del main().
Unos pequeños retoques a esta cita:
Hola, hay algunos errores en tu codigo.
1. Borra el #include <stdlib.h>, estas en C++
2. Borra el (1) del int main, debe quedar asi: int main()
3. Las variables se declaran fuera del ciclo do..while
4. Para el case 4 no es necesario el else, debes modificar el do..while para que te quede asi: } while((a != 4) || (b == 2));
5. Borra el system("pause") no es estandard.
Salu2.
1. No es borrar pues entonces ya no funcionaría. Es sustituir <stdlib.h> (correspondiente a C) por <cstdlib> (correspondiente a C++). Aunque usando la librería de C, el código compilará igual.
2. Este es el problema más importante y que hay que arreglar sí o sí. La función main puede estar vacía:
int main()
O con argumentos:
int main(int argc, char *argv[])
3. Este problema también es necesario arreglarlo (al menos para la variable 'a' porque la usas fuera del do{}, en el while()).
4. Más importante que eso: Los primeros 'case' no tienen 'break' (selecciones la opción que selecciones, siempre vas a acabar en la 4 pasando por las anteriores también)
5. No es borrar pues cambiaría el funcionamiento. Es sustituir 'system("pause")' por 'cin.get()'. Esta segunda opción se encuentra en <iostream> por lo que ya no es necesario usar la librería <cstdlib>.
PD: Ahora mismo las líneas 44, 45 y 46 no se están ejecutando nunca.
Selecciones la opción que selecciones, siempre acabas en la opción 4 (por el punto 4 anteriormente mencionado) y aquí o sales con el 'return 0' o vuelves a empezar.
No está bien estructurado el programa, tendrías que darle una vuelta para pulirlo un poco más.