Vale, tras estar mirandolo durante un tiempo ya lo he conseguido :D
Código:
#include <stdio.h>
int main() {
int d,m,y, i;
printf("Introduce el día:\n");
scanf("%d", &d);
printf("Introduce el mes\n");
scanf("%d", &m);
printf("Introduce el año:\n");
scanf("%d", &y);
switch (m) {
case 1: case 3: case 5: case 7: case 8: case 10: case 12:{
if (d<31 && d>0) {
printf ("Es una fecha valida\n");
}
else { printf("La fecha introducida no es correcta");}}
break;
case 2:
if(y%4==0 && d<30 && d>0){
printf("La fecha es valida y el año es bisiesto\n");
}
if (y%4!=0 && d<29 && d>0) {
printf("La fecha es valida y el año no es bisiesto\n");
}
else printf("La fecha no es valida");
break;
case 4: case 6: case 9: case 11:
if (d<30 && d>0){
printf("Es una fecha válida");
}
else {printf("La fecha introducida no es correcta");}
break;
default : printf("La fecha no es correcta");
break;
}
}
Gracias a todos los que me habéis ayudao ;)