Galera estou aprendendo a programar em 'C' agora, e queria saber porque meu programa não esta executando as entrada "23 59 0 34", assim que eu digito apenas um 0 na entrada, ele não imprime nada e acaba o loop, mas eu queria que ele só parasse o loop quando tivesse uma entra com quatro zeros Ex: "0 0 0 0".
#include <stdio.h>
int main()
{
int hora1, hora2, minuto1, minuto2, hora, tempo;
scanf("%d%d%d%d", &hora1, &minuto1, &hora2, &minuto2);
while (hora1!=0 && minuto1!=0 && hora2!=0 && minuto2!=0)
{
if(hora1<hora2)
{
hora = (hora2 - hora1) * 60;
tempo = (minuto1>=minuto2)? hora - (minuto1 - minuto2) : hora - (minuto2-minuto1);
}
else if(hora1==hora2)
{
tempo = (minuto1>=minuto2)? 1440 - (minuto1 - minuto2): 1440 - (minuto2 - minuto1);
}
else
{
hora = ((24 - hora1) + hora2) * 60;
tempo = (minuto1>=minuto2)? hora - (minuto1 - minuto2) : hora - (minuto2-minuto1);
}
printf("%d\n", tempo);
scanf("%d%d%d%d", &hora1, &minuto1, &hora2, &minuto2);
}
return 0;
}