#9465: 小小小問題


sh960115 (XD)


以下是我其中一個程式碼:
它有一個測資錯 
#include<stdio.h>
main(){
  int x=1,lines,a,b,c,d;
  scanf("%d",&lines);
  while(x<=lines){
    scanf("%d %d %d %d",&a,&b,&c,&d);
    if((b-a)==(c-b) && (c-b)==(d-c))printf("%d %d %d %d %d\n",a,b,c,d,d+(d-c));
    if((b/a)==(c/b) && (c/b)==(d/c))printf("%d %d %d %d %d\n",a,b,c,d,d*(d/c));
    x++;
  }
  return 0;
}
 
為什麼改成else if 之後它就會對??
 #include<stdio.h>
main(){
  int x=1,lines,a,b,c,d;
  scanf("%d",&lines);
  while(x<=lines){
    scanf("%d %d %d %d",&a,&b,&c,&d);
    if((b-a)==(c-b) && (c-b)==(d-c))printf("%d %d %d %d %d\n",a,b,c,d,d+(d-c));
    else if((b/a)==(c/b) && (c/b)==(d/c))printf("%d %d %d %d %d\n",a,b,c,d,d*(d/c));
    x++;
  }
  return 0;
}
 
#9468: Re:小小小問題


anandrewboy70900 (ShowTsai)


個例子
如果輸入的數是
3 4 5 6
你會發現第二個if也成立~ 


#9493: Re:小小小問題


sh960115 (XD)


個例子
如果輸入的數是
3 4 5 6
你會發現第二個if也成立~ 



哦哦~~我知道了  感謝你