我覺得要實際上來說的話,C的答案也不是很正確。
當然以題目來說a=0,但有學過程式的都知道;如果你沒有特別定義變數的值的話,這個值是一個亂數,所以如果要朝這個點去鑽的話,這題有可能會送分。
樓上,根據C語言標準,全域變數(Global variables)會預設為0,你說的是針對區域變數
關於 a 有可能輸出亂數的這邊來解答一下
一般來說 全域變數、靜態變數處於數據區,默認初始化為0 (如果指定初始值,則為指定的值)而區域變數處於堆棧區,其數值是隨機的,即當時內存中的值。這裡是VS的測試(全域變數、靜態變數) :這個是區域變數(像VS這類IDE是不可以編譯的)這個也是區域變數(但是線上的編譯器就能夠輸出隨機值)
總體來說不要利用編譯器的這種默認原則必要的初始化不是笨拙而是規範參考來源
29. 若執行以下 C 語言撰寫之程式,下列敘述何者正確?#include <s..-阿摩線上測驗