103程式設計(一) 作業2
[20141015 9:30更正] 4.(d)
(a)
(x*x)+(2*x*y)+(y*y)
(b)
(x+y)*(x+x*y+y)
(c)
x>(y+3*x*y-4)
(d)
((x*x*x)+3*x*y*z*(y+z))/(x+y)
2. 在程式裡宣告:
int x=3, y=4, s=5;
經過下列的運算後,x=?,y=?,s=? (各題單獨計算,不受前題影響)
(a) s+=x+y; (b) s*=y--; (c) s*=(y/2)++;
(d) x=(x+--y)*s++ (e) s=x*48/(--s+y--) (f) s%=(++x/2)*y--;
若連續運算,也就是每一題都根據前面的題目運算後的結果繼續運算,則最後結果為何?
2.
(a)
x=3,y=4,s=12
(b)
x=3,y=3,s=20
(c)
x=3,y=4,s=10
(d)
x=30,y=3,s=6
(e)
x=3,y=3,s=18
(f)
x=4,y=3,s=5
假若連續運算
x=241,y=0,s=110
3. 在程式裡宣告:
int i=10, j=20, k=40;
下列邏輯關係式運算,最後結果是truth或false?
(a) i<10 (b) k>i+j (c) i*20> i*j+k/i
(d) (k*10/j<i*j) && (i*i/j<k*k) (e) (k==j*2) || i<10
(f) i<<(i+j)/i == k*2
3.
(a)false
(b)truth
(c)false
(d)truth
(e)truth
(f)truth
4. 在程式裡宣告:
int a=0x17, b=0x25;
下列位元運算,最後的結果為何?請分別用十進位及十六進位來表示
(a) a&b (b) a|b (c) a^b
(d) ~a (e) a<<2 (f) b>>2
4.
(a)16進位0x5 ,10進位5
(b)16進位0x37 ,10進位55
(c)16進位0x32 ,10進位50
(d)16進位0xFFFFFFFFFFFFFFE8 ,10進位-24
(d)16進位0xffffffe8 十進位-24
(e)16進位0X5C ,10進位92
(f)16進位0x9 ,10進位9
不過還是有點搞不懂第4小題的~a意思啊 ...於是用C++配小算盤弄出來了
其實我從以前到現在沒用過<< 、>>、~ 這些根本很少再用,幾進位那個一個函方式就出來了
感覺就像取絕對值不用abs() 用IF判斷的感覺...
其他我不敢保證一定對 不過~~盡力寫了 第二大題(c)連續那個用成試跑還不會成功
都要用手算 哈哈... a~f 除非粗心否則應該不會錯 ...(應該吧呵呵...?)