請問各位下面這兩個簡單的程式為什麼預期結果會不一樣
#include <stdio.h>
const int S_PER_M=60;
const int S_PER_H=3600;
const double M_PER_K=0.6213;
int main(int argc, char **argv)
{
int sec;
while(scanf("%d",&sec)!=0)
{
printf("FFF\n");
fflush(stdin);
scanf("%d",&sec);
}
printf("Ending\n");
return 0;
}
上面這個程式我不管怎麼按"0"都不會跳出while
但是下面這個卻可以
#include <stdio.h>
const int S_PER_M=60;
const int S_PER_H=3600;
const double M_PER_K=0.6213;
int main(int argc, char **argv)
{
int sec;
scanf("%d",&sec);
while(sec!=0)
{
printf("FFF\n");
fflush(stdin);
scanf("%d",&sec);
}
printf("Ending\n");
return 0;
}
請問while(scanf("%d",&sec)!=0) 這樣寫有什麼不對嗎???