地特三等申論題
106年
[資訊處理] 程式語言
第 三 題
三、試問下列程式碼執行後,其值為多少?(25 分)
#include
#include
int main(void) {
int x = 5, y = 7;
if(x=6){
printf("%d\n", x*y);
}
else {
printf("%d\n", x+y);
}
if (x == 8) {
printf("%d\n", x*(x+y));
}
else {
printf("%d\n", x - y);
}
printf("%d\n", x);
printf("%d\n", y);
system("pause");
return 0;
}
📝 此題為申論題
思路引導 VIP
本題測驗考生對 C 語言中「指派運算子 (=)」與「比較運算子 (==)」差異的敏銳度。看到 if(x=6) 必須立刻警覺這會將變數重新賦值並評估為真(非零),接著只要逐步追蹤變數 x 與 y 的狀態變化,進行簡單四則運算即可得出正確輸出。