備考刷題,請到
CDA認證小程序
本題考查變量的作用域。定義在函數(shù)內部的變量叫做局部變量, 局部變量只能函數(shù)內部使用, 不能在函數(shù)外部使用。A的說法是正確的。當函數(shù)外部和內部有相同的變量時, 該函數(shù)將優(yōu)先使用自己的, 自己沒有再去外部找, B的說法正確。全局變量能在整個程序的任意位置被使用, C的說法是正確的。可以使用global關鍵字在函數(shù)內部聲明一個全局變量,所以D的說法是錯誤的, 故選D。
正確答案是:D: 函數(shù)內部不能定義全局變量。
分析:
A: 函數(shù)內部定義的變量叫做局部變量,局部變量只能在局部使用。這個說法是正確的。局部變量的作用域僅限于函數(shù)內部,函數(shù)執(zhí)行完畢后,局部變量就會被銷毀。
B: 當函數(shù)內部和全局有一個重名的變量時,將優(yōu)先使用函數(shù)自己的。這個說法也是正確的。根據變量的作用域原則,函數(shù)內部的局部變量會覆蓋同名的全局變量。
C: 全局變量能在整個程序的任意位置被使用。這個說法是正確的。全局變量的作用域是整個程序,任何函數(shù)都可以訪問和修改全局變量。
D: 函數(shù)內部不能定義全局變量。這個說法是錯誤的。雖然通常全局變量是在函數(shù)外部定義的,但在某些編程語言中,可以在函數(shù)內部使用 `global` 關鍵字(如Python)或類似方式來聲明或修改全局變量。不過,直接在函數(shù)內部定義全局變量并不常見,且可能導致代碼的可讀性和維護性下降。