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

Lambda expression syntax in C Sharp (C#) - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to declare a lambda that adds two integers.

C Sharp (C#)
Func<int, int, int> add = (x, y) => x [1] y;
Drag options to blanks, or click blank then click option'
A+
B/
C*
D-
Attempts:
3 left
💡 Hint
Common Mistakes
Using - instead of +
Using * or / which changes the operation
2fill in blank
medium

Complete the code to declare a lambda that checks if a number is even.

C Sharp (C#)
Func<int, bool> isEven = n => n [1] 2 == 0;
Drag options to blanks, or click blank then click option'
A+
B%
C-
D*
Attempts:
3 left
💡 Hint
Common Mistakes
Using + or - instead of %
Using * which multiplies instead of checking remainder
3fill in blank
hard

Fix the error in the lambda that returns the square of a number.

C Sharp (C#)
Func<int, int> square = x => x [1] 2;
Drag options to blanks, or click blank then click option'
A*
B**
C^
D+
Attempts:
3 left
💡 Hint
Common Mistakes
Using ** which is invalid in C#
Using ^ which is bitwise XOR, not power
4fill in blank
hard

Fill the blank to create a lambda that filters numbers greater than 10.

C Sharp (C#)
Func<int, bool> isGreaterThanTen = n => n [1] 10;
Drag options to blanks, or click blank then click option'
A==
B<
C>
D!=
Attempts:
3 left
💡 Hint
Common Mistakes
Using < instead of >
Using != which checks inequality
5fill in blank
hard

Fill all three blanks to create a lambda that returns a dictionary of words and their lengths for words longer than 3 characters.

C Sharp (C#)
var lengths = words.Where(w => w.Length [1] 3).ToDictionary([2] => [3].ToLower(), [2] => [2].Length);
Drag options to blanks, or click blank then click option'
A>
Bword
Cw
Attempts:
3 left
💡 Hint
Common Mistakes
Using < instead of > in the filter
Using inconsistent variable names in the lambdas

Practice

(1/5)
1. What does the lambda expression x => x * 2 represent in C#?
easy
A. A variable declaration
B. A function that doubles the input value
C. A loop that runs twice
D. A conditional statement

Solution

  1. Step 1: Understand lambda syntax

    The expression x => x * 2 means a function taking input x and returning x * 2.
  2. Step 2: Interpret the operation

    It doubles the input value by multiplying it by 2.
  3. Final Answer:

    A function that doubles the input value -> Option B
  4. Quick Check:

    Lambda x => x * 2 doubles input [OK]
Hint: Lambda uses => to define short functions quickly [OK]
Common Mistakes:
  • Thinking lambda is a variable
  • Confusing lambda with loops
  • Assuming lambda is a conditional
2. Which of the following is the correct syntax for a lambda expression that takes two integers and returns their sum?
easy
A. (a, b) => a + b
B. a, b => a + b
C. (a, b) => { a + b }
D. (a, b) => a + b;

Solution

  1. Step 1: Check parameter syntax

    Parameters must be enclosed in parentheses when there is more than one, so (a, b) is correct.
  2. Step 2: Check expression body

    The expression a + b without braces is valid for single expressions. (a, b) => a + b matches this.
  3. Final Answer:

    (a, b) => a + b -> Option A
  4. Quick Check:

    Two parameters need parentheses and expression body [OK]
Hint: Use parentheses for multiple parameters in lambda [OK]
Common Mistakes:
  • Omitting parentheses for multiple parameters
  • Adding semicolon inside lambda expression
  • Using braces without return keyword incorrectly
3. What is the output of the following C# code?
Func<int, int> square = x => x * x;
Console.WriteLine(square(4));
medium
A. Compilation error
B. 8
C. 4
D. 16

Solution

  1. Step 1: Understand the lambda function

    The lambda x => x * x returns the square of the input number.
  2. Step 2: Calculate the output for input 4

    4 * 4 = 16, so square(4) returns 16.
  3. Final Answer:

    16 -> Option D
  4. Quick Check:

    Square of 4 is 16 [OK]
Hint: Lambda returns expression result directly if no braces [OK]
Common Mistakes:
  • Confusing multiplication with addition
  • Expecting lambda to print instead of return
  • Thinking lambda causes syntax error
4. Identify the error in this lambda expression:
Func<int, int> add = (x, y) => x + y;
medium
A. Parentheses around parameters are not allowed
B. Missing return keyword inside lambda
C. Lambda has too many parameters for Func<int, int>
D. Lambda expression syntax is correct

Solution

  1. Step 1: Check Func delegate signature

    Func<int, int> expects one input parameter and one output (int).
  2. Step 2: Compare lambda parameters

    The lambda has two parameters (x, y), which does not match the delegate expecting one.
  3. Final Answer:

    Lambda has too many parameters for Func<int, int> -> Option C
  4. Quick Check:

    Func<int, int> means one input, one output [OK]
Hint: Match lambda parameters count with delegate type [OK]
Common Mistakes:
  • Assuming multiple parameters allowed for Func
  • Forgetting delegate parameter count rules
  • Thinking return keyword is always needed
5. Given a list of integers, which lambda expression correctly filters out all even numbers using List<int>.Where()?
var numbers = new List<int> {1, 2, 3, 4, 5, 6};
var odds = numbers.Where( /* which lambda? */ );
hard
A. x => x % 2 == 1
B. x => x % 2 = 1
C. x => { return x % 2 == 0; }
D. x => x / 2 == 1

Solution

  1. Step 1: Understand filtering condition

    We want to keep odd numbers, so condition is x % 2 == 1.
  2. Step 2: Check lambda syntax and logic

    x => x % 2 == 1 uses correct syntax and logic to filter odds. x => x % 2 = 1 uses assignment (=) which is invalid. x => { return x % 2 == 0; } filters evens, not odds. x => x / 2 == 1 checks division, not oddness.
  3. Final Answer:

    x => x % 2 == 1 -> Option A
  4. Quick Check:

    Filter odds with modulo == 1 [OK]
Hint: Use == for comparison, % 2 == 1 filters odd numbers [OK]
Common Mistakes:
  • Using = instead of == in lambda
  • Filtering evens instead of odds
  • Confusing division with modulo
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