不太懂那個空白是要怎麼空白
我用兩種方法上傳都WA
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
int main()
{
int a,b,c,d,e,f,g,h,t;
char x[10],y[10];
while(scanf("%d",&t)==1)
{
printf("\n");
for(h=0;h<t;h++)
{
scanf("%s %s",x,y);
a=x[0]*10+x[1];
b=x[3]*10+x[4];
c=x[6]*1000+x[7]*100+x[8]*10+x[9];
d=y[0]*10+y[1];
e=y[3]*10+y[4];
f=y[6]*1000+y[7]*100+y[8]*10+y[9];
if(c<f||(c==f&&b<e)||(c==f&&b==e&&a<d))
printf("Case #%d: Invalid birth date\n",h+1);
if(c-f>130||(c==f+130&&b>e)||(c==f+130&&b==e&&a>d))
printf("Case #%d: Check birth date\n",h+1);
if((c-f<130&&c>f&&b>e&&a>d)||(c-f<130&&c>f&&b==e&&a>d))
printf("Case #%d: %d\n",h+1,c-f);
if((c>f&&b<e)||(c>f&&b==e&&a<d))
printf("Case #%d: %d\n",h+1,c-f-1);
if(h!=t-1)
printf("\n");
}
}
return 0;
}
這方法跟我同學輸出來的測資答案都正確
卻還是WA,希望能幫忙看看。
在 ZeroJudge 上空不空行都不會影響結果。
你的字串開太小了,C 會在字串的尾端加一個 '\0',所以陣列大小要比字串長度大 1。
130 歲是可以被接受的哦。
除了這個問題以外,你的程式還有其它問題哦,繼續加油!