1. 程式人生 > >Online Judge 輸出超限

Online Judge 輸出超限

在OJ裡輸出超限只會是迴圈輸出沒有結束,因為現實的錯誤有另外一個時間超限

這是問題,下面是我的問題程式碼

#include <stdio.h>
int leap(int a)
{   int r;
	if(a%100)
	{
		if(a%4==0)r=1;
		else r=0;
	}
		else if(a%400==0)r=1;
		else  r=0;
		return r;
}
int main()
{
	int a,b,c,days;
	int tep[12]={0,31,59,90,120,151,181,212,243,273,304,334};
	while(scanf("%d %d %d",&a,&b,&c)!=0)
	{
		if(leap(a))
		{	
			if(b>2)tep[b-1]+=1;
			days=tep[b-1]+c;
		}
		else
			days=tep[b-1]+c;  
		printf("%d\n",days);
	}
	return 0;
}

這個程式碼在vc++6.0上執行沒有任何問題,但是在OJ上執行顯示輸出超限

原因是因為在while語句中,是=0,而不是=EOF;

VC可能因為沒有那麼嚴格,所以通過了