【C#-題庫】運算子 Operator
1.以下何者能夠正確地將一個變數加1?
- ++a++;
- a += 1;
- a ++ 1;
- a = a +1;
- a = +1;
A. 1, 3
B. 2, 4
C. 3, 5
D. 4, 5
E. None of these (以上皆非)
2. 底下程式碼的輸出為何?
byte b1 = 0xF7; byte b2 = 0xAB; byte temp; temp = (byte)(b1 & b2); Console.Write (temp + " "); temp = (byte)(b1^b2); Console.WriteLine(temp);
A. 163 92
B. 92 163
C. 192 63
D. 0 1
3. 下列何者不是數值運算子?
A. **
B. +
C. /
D. %
E. *
4. 以下何者不是關係運算子?
- >=
- !=
- Not
- <=
- <>=
A. 1, 3
B. 2, 4
C. 3, 5
D. 4, 5
E. None of these
5. 以下何者不是逐位元(Bitwise)運算子?
A. &
B. |
C. <<
D. ^
E. ~
6. 何者對底下程式的敘述正確?
int d; d = Convert.ToInt32( !(30 < 20) );
A. 0會被指定給d。
B. 1會被指定給d。
C. -1會被指定小d。
D. 程式有錯誤。
E. 若!被換成Not的話,上面程式就會正常運作。
7. 底下程式的輸出為何?
Console.WriteLine(13 / 2 + " " + 13 % 2);
A. 6.5 1
B. 6.5 0
C. 6 0
D. 6 1
E. 6.5 6.5
8. 以下何者是邏輯(Logical)運算子?
- &&
- ||
- !
- Xor
- %
A. 1, 2, 3
B. 1, 3, 4
C. 2, 4, 5
D. 3, 4, 5
E. None of these
9. 設n是一個Byte型態的變數,我們想要檢查n的第4個位元(從右邊算起)是0(OFF)還是1(ON)的話,要如何做?
A.
if ((n&16) == 16) Console.WriteLine("Fourth bit is ON");
B.
if ((n&8) == 8) Console.WriteLine("Fourth bit is ON");
C.
if ((n ! 8) == 8) Console.WriteLine("Fourth bit is ON");
D.
if ((n ^ 8) == 8) Console.WriteLine("Fourth bit is ON");
E.
if ((n ~ 8) == 8) Console. WriteLine("Fourth bit is ON");
10. 底下程式碼的輸出為何?
int num = 1, z = 5; if (!(num <= 0)) Console.WriteLine( ++num + z++ + " " + ++z ); else Console.WriteLine( --num + z-- + " " + --z );
A. 5 6
B. 6 5
C. 6 6
D. 7 7
11. 設n是Byte字元型態,我們若想對其第4個位元關閉的話(設為0),且要不影響到其他的位元,要如何做?
A. n = n && HF7
B. n = n & 16
C. n = n & 0xF7
D. n = n & HexF7
E. n = n & 8
12. 底下程式的輸出為何?
byte b1 = 0xAB; byte b2 = 0x99; byte temp; temp = (byte)~b2; Console.Write(temp + " "); temp = (byte)(b1 << b2); Console.Write (temp + " "); temp = (byte) (b2 >> 2); Console.WriteLine(temp);
A. 102 1 38
B. 108 0 32
C. 102 0 38
D. 1 0 1
13. 以下何者不是指定運算子?
A. \=
B. /=
C. *=
D. +=
E. %=
14. 底下程式的輸出為何?
int i, j = 1, k; for (i = 0; i < 5; i++) { k = j++ + ++j; Console.Write(k + " "); }
A. 8 4 16 12 20
B. 4 8 12 16 20
C. 4 8 16 32 64
D. 2 4 6 8 10
15. 底下程式的輸出為何?
int a = 10, b = 20, c = 30; int res = a < b ? a < c ? c : a : b; Console.WriteLine(res);
A. 10
B. 20
C. 30
D. Compile Error / Syntax Error
14. 關於底下程式的描述何者正確?
int a = 10; int b = 20; bool c; c = !(a > b);
- 程式沒有錯誤。
- 一個錯誤會發生,因為!僅能使用在int上。
- 1會指定給變數c。
- true會指定給變數c。
- false會指定給變數c。
A. 1, 3
B. 2, 4
C. 4, 5
D. 1, 4
E. None of these