Я должен вводить реальные числа до тех пор, пока не будет встречен вход 0, затем программа должна завершиться. Я получил этот код для целочисленного типа данных:
#include
int main()
{
int i;
int a[60];
for(i=0;i<60;i++)
a[i]=-1;
for(i=0;;i++)
{
scanf("%d",&a[i]);
if(a[i]==0)
break;
}
return 0;
}
Но когда я пытаюсь использовать тот же код в двойном типе данных, завершение программы не происходит при вводе 0. Вот код:
#include
int main()
{
int i;
double a[60];
for(i=0;i<60;i++)
a[i]=-1.0;
for(i=0;;i++)
{
scanf("%f",&a[i]);
if(a[i]==0.0)
break;
}
return 0;
}
Кто-нибудь потрудился бы объяснить, почему это так? Я не могу думать ни о какой причине. Заранее спасибо.