Examly題庫立即開始練習
原住民族考試四等考試-電子工程類科計算機概要10640單選題

執行下列 C 程式後,產生的輸出為何? #include <stdio.h> int f1(int *x, int y, char *z); int main (void){ int a = 3; int b = 10; char c[] = "Uave a great day!"; f1(&a,b,c); printf("a = %d, b = %d, c = %s\n", a, b, c); return 0; } int f1(int *x, int y, char *z){ *x = *x+2; y = *x + y; *z = 'H'; *(z+7) = 'G'; }

Aa = 5, b = 10, c = Have a Great day!正確答案
Ba = 3, b = 10, c = Have a great day!
Ca = 3, b = 13, c = Uave a Great day!
Da = 3, b = 10, c = Uave a great day!
答案與詳解
A
正確答案
指標傳遞會改變原值,值傳遞不會。a 經指標修改為 5,b 值傳遞不變仍為 10,字串第0、7位被改為 H、G。

為什麼答案是 A

a 透過 &a 傳址,*x=*x+2 使 a=5;b 是值傳遞不變仍為 10;c[0] 改為 'H',c[7] 改為 'G',故字串變為 'Have a Great day!'。

考點:傳址vs傳值考點:忽略傳址考點:值傳遞誤判考點:全忽略指標
載入中…

計算機概要 相關題目

想練更多計算機概要考古題?

Examly 收錄 38 萬+ 道歷屆題目,每題都有像這樣的精選詳解。免費下載,立即開練。

Download on theApp Store即將推出Google Play
黑皮