namespaceOperatorsAppl { classProgram { staticvoidMain(string[] args) { int a = 21; int b = 10; int c;
c = a + b; Console.WriteLine("Line 1 - c 的值是 {0}", c); c = a - b; Console.WriteLine("Line 2 - c 的值是 {0}", c); c = a * b; Console.WriteLine("Line 3 - c 的值是 {0}", c); c = a / b; Console.WriteLine("Line 4 - c 的值是 {0}", c); c = a % b; Console.WriteLine("Line 5 - c 的值是 {0}", c);
// ++a 先进行自增运算再赋值 c = ++a; Console.WriteLine("Line 6 - c 的值是 {0}", c);
// 此时 a 的值为 22 // --a 先进行自减运算再赋值 c = --a; Console.WriteLine("Line 7 - c 的值是 {0}", c); Console.ReadLine(); } } }
当上面的代码被编译和执行时,它会产生下列结果:
1 2 3 4 5 6 7
Line 1 - c 的值是 31 Line 2 - c 的值是 11 Line 3 - c 的值是 210 Line 4 - c 的值是 2 Line 5 - c 的值是 1 Line 6 - c 的值是 22 Line 7 - c 的值是 21
classProgram { staticvoidMain(string[] args) { int a = 21; int b = 10; if (a == b) { Console.WriteLine("Line 1 - a 等于 b"); } else { Console.WriteLine("Line 1 - a 不等于 b"); } if (a < b) { Console.WriteLine("Line 2 - a 小于 b"); } else { Console.WriteLine("Line 2 - a 不小于 b"); } if (a > b) { Console.WriteLine("Line 3 - a 大于 b"); } else { Console.WriteLine("Line 3 - a 不大于 b"); } /* 改变 a 和 b 的值 */ a = 5; b = 20; if (a <= b) { Console.WriteLine("Line 4 - a 小于或等于 b"); } if (b >= a) { Console.WriteLine("Line 5 - b 大于或等于 a"); } } }
当上面的代码被编译和执行时,它会产生下列结果:
1 2 3 4 5
Line 1 - a 不等于 b Line 2 - a 不小于 b Line 3 - a 大于 b Line 4 - a 小于或等于 b Line 5 - b 大于或等于 a
逻辑运算符
下表显示了 C# 支持的所有逻辑运算符。假设变量 A 为布尔值 true,变量 B 为布尔值 false,则:
classProgram { staticvoidMain(string[] args) { int a = 21; int b = 10; if (a == b) { Console.WriteLine("Line 1 - a 等于 b"); } else { Console.WriteLine("Line 1 - a 不等于 b"); } if (a < b) { Console.WriteLine("Line 2 - a 小于 b"); } else { Console.WriteLine("Line 2 - a 不小于 b"); } if (a > b) { Console.WriteLine("Line 3 - a 大于 b"); } else { Console.WriteLine("Line 3 - a 不大于 b"); } /* 改变 a 和 b 的值 */ a = 5; b = 20; if (a <= b) { Console.WriteLine("Line 4 - a 小于或等于 b"); } if (b >= a) { Console.WriteLine("Line 5 - b 大于或等于 a"); } } }
当上面的代码被编译和执行时,它会产生下列结果:
1 2 3 4
Line 1 - 条件为真 Line 2 - 条件为真 Line 3 - 条件不为真 Line 4 - 条件为真
using System; namespaceOperatorsAppl { classProgram { staticvoidMain(string[] args) { int a = 60; /* 60 = 0011 1100 */ int b = 13; /* 13 = 0000 1101 */ int c = 0;
c = a & b; /* 12 = 0000 1100 */ Console.WriteLine("Line 1 - c 的值是 {0}", c );
c = a | b; /* 61 = 0011 1101 */ Console.WriteLine("Line 2 - c 的值是 {0}", c);
c = a ^ b; /* 49 = 0011 0001 */ Console.WriteLine("Line 3 - c 的值是 {0}", c);
c = ~a; /*-61 = 1100 0011 */ Console.WriteLine("Line 4 - c 的值是 {0}", c);
c = a << 2; /* 240 = 1111 0000 */ Console.WriteLine("Line 5 - c 的值是 {0}", c);
c = a >> 2; /* 15 = 0000 1111 */ Console.WriteLine("Line 6 - c 的值是 {0}", c); Console.ReadLine(); } } }
当上面的代码被编译和执行时,它会产生下列结果:
1 2 3 4 5 6
Line 1 - c 的值是 12 Line 2 - c 的值是 61 Line 3 - c 的值是 49 Line 4 - c 的值是 -61 Line 5 - c 的值是 240 Line 6 - c 的值是 15
namespaceOperatorsAppl { classProgram { staticvoidMain(string[] args) { int a = 21; int c;
c = a; Console.WriteLine("Line 1 - = c 的值 = {0}", c);
c += a; Console.WriteLine("Line 2 - += c 的值 = {0}", c);
c -= a; Console.WriteLine("Line 3 - -= c 的值 = {0}", c);
c *= a; Console.WriteLine("Line 4 - *= c 的值 = {0}", c);
c /= a; Console.WriteLine("Line 5 - /= c 的值 = {0}", c);
c = 200; c %= a; Console.WriteLine("Line 6 - %= c 的值 = {0}", c);
c <<= 2; Console.WriteLine("Line 7 - <<= c 的值 = {0}", c);
c >>= 2; Console.WriteLine("Line 8 - >>= c 的值 = {0}", c);
c &= 2; Console.WriteLine("Line 9 - &= c 的值 = {0}", c);
c ^= 2; Console.WriteLine("Line 10 - ^= c 的值 = {0}", c);
c |= 2; Console.WriteLine("Line 11 - |= c 的值 = {0}", c); Console.ReadLine(); } } }
当上面的代码被编译和执行时,它会产生下列结果:
1 2 3 4 5 6 7 8 9 10 11
Line 1 - = c 的值 = 21 Line 2 - += c 的值 = 42 Line 3 - -= c 的值 = 21 Line 4 - *= c 的值 = 441 Line 5 - /= c 的值 = 21 Line 6 - %= c 的值 = 11 Line 7 - <<= c 的值 = 44 Line 8 - >>= c 的值 = 11 Line 9 - &= c 的值 = 2 Line 10 - ^= c 的值 = 0 Line 11 - |= c 的值 = 2
namespaceOperatorsAppl { classProgram { staticvoidMain(string[] args) { int a = 20; int b = 10; int c = 15; int d = 5; int e; e = (a + b) * c / d; // ( 30 * 15 ) / 5 Console.WriteLine("(a + b) * c / d 的值是 {0}", e);
e = ((a + b) * c) / d; // (30 * 15 ) / 5 Console.WriteLine("((a + b) * c) / d 的值是 {0}", e);
e = (a + b) * (c / d); // (30) * (15/5) Console.WriteLine("(a + b) * (c / d) 的值是 {0}", e);
e = a + (b * c) / d; // 20 + (150/5) Console.WriteLine("a + (b * c) / d 的值是 {0}", e); Console.ReadLine(); } } }
当上面的代码被编译和执行时,它会产生下列结果:
1 2 3 4
(a + b) * c / d 的值是 90 ((a + b) * c) / d 的值是 90 (a + b) * (c / d) 的值是 90 a + (b * c) / d 的值是 50