Saturday, February 11, 2012

C語言運算子與16進位與8進位

39.下列以 C 程式語言撰寫之程式執行後產生之輸出為何?
#include
main(){
int x=0x011, y=011;
if (--x > y) x=(x-y)%4;
else x=(x+y)%5;
printf(“%d\n”,x);
}
(a) 0 (b) 1 (c) 2 (d) 3

這題考三個重點, x=0x011, 其實寫0x11就可以了,這是16進位。
y=011這是8進位。所以換成10進位,x是17,y=9。
--x後,x變成16, 比y大,所以x=(16-9)%4;
x=3

答案是(d)

No comments:

熱門必看