Hola!
A ver, lo he modificado un poco, a ver si sabéis porqué en los años no bisiestos no me sale :(
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");
}
else { printf("La fecha introducida no es correcta");}}
break;
case 2:
if(y%4==0 && d<30 && d>0){
printf("La fecha es valida en feb");
}
Aquí digo que falla=> if (y%4!=0 && d<29 && d>0){
printf("La fecha es valida feb");
}
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!