Bird
Raised Fist0
C Sharp (C#)programming~20 mins

Operator precedence and evaluation order in C Sharp (C#) - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Operator Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of mixed arithmetic and logical operators
What is the output of the following C# code snippet?
C Sharp (C#)
int a = 5;
int b = 3;
bool result = a > 2 && b < 5 || a == 5;
Console.WriteLine(result);
AFalse
BTrue
CCompilation error
DRuntime exception
Attempts:
2 left
💡 Hint
Remember that && has higher precedence than || in C#.
❓ Predict Output
intermediate
2:00remaining
Result of combined increment operators
What is the value of variable x after executing this code?
C Sharp (C#)
int x = 3;
int y = x++ + ++x;
// What is the value of x now?
Console.WriteLine(x);
A5
B6
C3
D4
Attempts:
2 left
💡 Hint
Remember how postfix and prefix increments work and their evaluation order.
❓ Predict Output
advanced
2:00remaining
Output of bitwise and logical operators combined
What is the output of this code snippet?
C Sharp (C#)
int a = 6; // binary 0110
int b = 3; // binary 0011
bool result = (a & b) > 0 && (a | b) < 10;
Console.WriteLine(result);
ARuntime exception
BFalse
CCompilation error
DTrue
Attempts:
2 left
💡 Hint
Bitwise & and | have lower precedence than comparison operators.
❓ Predict Output
advanced
2:00remaining
Value of variable after complex expression with ternary and arithmetic
What is the value of z after running this code?
C Sharp (C#)
int x = 4;
int y = 2;
int z = x > y ? x++ * 2 : y++ * 3;
Console.WriteLine(z);
A8
B9
C6
D10
Attempts:
2 left
💡 Hint
The ternary operator evaluates only one branch. Postfix increment happens after the value is used.
❓ Predict Output
expert
2:00remaining
Output of expression with mixed assignment and logical operators
What is the output of this code?
C Sharp (C#)
bool a = false;
bool b = true;
bool c = a = b || a && !b;
Console.WriteLine(c);
ACompilation error
BFalse
CTrue
DRuntime exception
Attempts:
2 left
💡 Hint
Remember operator precedence: && before ||, and assignment is right to left.

Practice

(1/5)
1. Which operator has the highest precedence in the expression 3 + 4 * 2?
easy
A. Subtraction (-)
B. Addition (+)
C. Division (/)
D. Multiplication (*)

Solution

  1. Step 1: Recall operator precedence rules

    Multiplication (*) has higher precedence than addition (+) in C#.
  2. Step 2: Apply precedence to the expression

    The multiplication 4 * 2 is evaluated first, then 3 is added.
  3. Final Answer:

    Multiplication (*) -> Option D
  4. Quick Check:

    Multiplication before addition = Multiplication (*) [OK]
Hint: Multiplication and division come before addition and subtraction [OK]
Common Mistakes:
  • Thinking addition happens before multiplication
  • Ignoring operator precedence
  • Assuming left-to-right always applies
2. Which of the following expressions is correctly using parentheses to change the evaluation order in C#?
easy
A. int result = 3 + 4 * 2);
B. int result = (3 + 4 * 2;
C. int result = 3 + (4 * 2);
D. int result = 3 + 4 * 2;

Solution

  1. Step 1: Check parentheses balance and syntax

    int result = 3 + (4 * 2); has balanced parentheses around (4 * 2), which is correct syntax.
  2. Step 2: Verify other options for syntax errors

    Options A and C have unbalanced parentheses, and D has no parentheses to change order.
  3. Final Answer:

    int result = 3 + (4 * 2); -> Option C
  4. Quick Check:

    Balanced parentheses change order correctly [OK]
Hint: Parentheses must be balanced and properly placed [OK]
Common Mistakes:
  • Leaving parentheses unbalanced
  • Placing parentheses incorrectly
  • Forgetting to close parentheses
3. What is the output of the following C# code?
int a = 5;
int b = 3;
int c = 2;
int result = a - b + c * 4;
Console.WriteLine(result);
medium
A. 10
B. 8
C. 6
D. 4

Solution

  1. Step 1: Identify operator precedence in the expression

    Multiplication (*) has higher precedence than addition (+) and subtraction (-), so c * 4 is evaluated first: 2 * 4 = 8.
  2. Step 2: Evaluate the remaining expression left to right

    Now compute a - b + 8: 5 - 3 = 2, then 2 + 8 = 10.
  3. Final Answer:

    10 -> Option A
  4. Quick Check:

    Multiplication before addition/subtraction [OK]
Hint: Multiply before add or subtract [OK]
Common Mistakes:
  • Adding before multiplying
  • Ignoring operator precedence
  • Calculating left to right without precedence
4. Identify the error in the following C# code snippet:
int x = 10;
int y = 5;
int z = x / y * 2 +;
Console.WriteLine(z);
medium
A. Division operator '/' is invalid here
B. Missing operand after '+' operator
C. Variables x and y are not declared
D. Console.WriteLine syntax is incorrect

Solution

  1. Step 1: Check the expression for syntax errors

    The expression ends with a '+' operator without a following operand, which is invalid syntax.
  2. Step 2: Verify other parts of the code

    Variables x and y are declared correctly, division operator is valid, and Console.WriteLine syntax is correct.
  3. Final Answer:

    Missing operand after '+' operator -> Option B
  4. Quick Check:

    Operator must have operands on both sides [OK]
Hint: Check for missing operands near operators [OK]
Common Mistakes:
  • Ignoring incomplete expressions
  • Assuming division operator is wrong
  • Overlooking missing semicolons
5. Given the code below, what is the value of result? Consider operator precedence and evaluation order.
int a = 2;
int b = 3;
int c = 4;
int result = a + b * c - (a + b) * c / b;
hard
A. 8
B. 4
C. 6
D. 2

Solution

  1. Step 1: Evaluate expressions inside parentheses first

    (a + b) = 2 + 3 = 5.
  2. Step 2: Calculate multiplication and division next

    b * c = 3 * 4 = 12.
    (a + b) * c / b = 5 * 4 / 3 = 20 / 3 = 6 (integer division truncates).
  3. Step 3: Calculate the full expression left to right

    a + b * c - (a + b) * c / b = 2 + 12 - 6 = 14 - 6 = 8.
  4. Step 4: Re-check integer division

    20 / 3 = 6 (integer division truncates decimals).
  5. Final Answer:

    8 -> Option A
  6. Quick Check:

    Parentheses first, then multiply/divide, then add/subtract [OK]
Hint: Parentheses first, then multiply/divide, then add/subtract [OK]
Common Mistakes:
  • Ignoring integer division truncation
  • Evaluating left to right without precedence
  • Calculating parentheses last
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard