verificador de ano bissexto
{
int dia, mes, ano;
printf("Digite o Dia:"); scanf("%d",&dia); printf("Digite o mês:"); scanf("%d",&mes); printf("Digite o ano:"); scanf("%d",&ano); while ((dia < 1)||(dia > 31))
{
printf ("\n Este dia é inválido. Digite um novo dia:\n"); scanf ("%d", &dia);
}
while ((mes < 1)||(mes > 12))
{
printf ("\n Este mes é inválido. Digite um novo mes:\n"); scanf ("%d", &mes);
}
while ((ano < 1900)||(ano > 2100))
{
printf ("\n Este ano é inválido. Digite um novo ano:\n"); scanf ("%d", &ano);
}
while (((mes==2)&&(dia>29))||(((mes ==4)||(mes==6)||(mes==9)||(mes==11))&&(dia>30)))
{
printf ("\nEste dia não é valido neste mes. Digite um novo dia:\n"); scanf ("%d", &dia);
}
if(!(((ano%4)&&(ano%100))||(ano%400)))
{ switch (mes)
{ case 1: dia=dia; printf ("\n Esse é o %dº dia do %d ano.(Anos Bisexto)\n",dia,ano); break; case 2: if (((dia = 1))&&(!((ano%4)&&(ano%100))||(ano%400)))
{
dia = 31+dia; printf ("\n Esse é o %dº dia do %d ano.(Anos Bisexto)\n",dia,ano);
}
break;
case 3: if(!((ano%4)&&(ano%100))||(ano%100)) { dia= 31+29+dia; printf ("\n Esse é o %dº dia do %d ano.(Anos Bisexto)\n",dia,ano);
}
break;
case 4: if (((dia = 1))&&(!((ano%4)&&(ano%100))||(ano%400)))
{
dia = 31+29+31+dia; printf ("\n Esse é o %dº dia do %d ano.(Anos Bisexto)\n",dia,ano);
}
break;
case 5: if(!((ano%4)&&(ano%100))||(ano%100)) { dia = 31+29+31+30+dia; printf ("\n Esse é o %dº dia do %d ano.(Anos Bisexto)\n",dia,ano);
}
break;
case 6: if (((dia = 1))&&(!((ano%4)&&(ano%100))||(ano%400)))
{
dia = 31+29+31+30+31+dia; printf ("\n Esse é o %dº dia do %d ano.(Anos Bisexto)\n",dia,ano);
}
break;
case 7: if(!((ano%4)&&(ano%100))||(ano%400)) { dia = 31+29+31+30+31+30+dia; printf ("\n Esse é o %dº dia do %d ano.(Anos Bisexto)\n",dia,ano);
}
break;
case 8: if(!((ano%4)&&(ano%100))||(ano%400)) { dia = 31+29+31+30+31+30+31+dia; printf ("\n Esse é o %dº dia do %d