#22721: C 為甚麼會錯


a90091995@gmail.com (宥為)

學校 : 不指定學校
編號 : 132271
來源 : [120.126.194.175]
最後登入時間 :
2021-03-04 09:31:44
a005. Eva 的回家作業 -- POJ | From: [118.167.176.157] | 發表日期 : 2020-09-28 18:14

請問這樣會甚麼會錯

會先輸出兩次 1 2 3 4 5

再繼續讀取 1 2 4 8 

 

#include <stdio.h>

#include <stdlib.h>

 

int main(void)

{

    int i,t;

    int a, b, c, d, e;

    scanf("%d",&t);

    i = 0;

    while(i<t)

    {

        i++;

        scanf("%d %d %d %d", &a, &b, &c, &d);

        if ((b-a)==(d-c))

        {

            e = d+b-a;

            printf("%d %d %d %d %d", a, b, c, d, e);

            printf("\n");

 

        }

        else e = d*c/b;

        {

             printf("%d %d %d %d %d\n", a, b, c, d, e);

             printf("\n");

        }

    }

 

    return 0;

}

 

 
#22723: Re:C 為甚麼會錯


snakeneedy (蛇~Snake)

學校 : 國立高雄師範大學附屬高級中學
編號 : 7661
來源 : [114.40.8.251]
最後登入時間 :
2023-01-25 19:16:06
a005. Eva 的回家作業 -- POJ | From: [123.194.188.217] | 發表日期 : 2020-09-28 18:47

else e = d*c/b;
{
    printf("%d %d %d %d %d\n", a, b, c, d, e);
    printf("\n");
}

else 只會執行 e = d*c/b;,底下的大括號並不在 if-else 的範圍內 (即一定會執行)

 
ZeroJudge Forum