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

Why Return values and void methods in C Sharp (C#)? - Purpose & Use Cases

Choose your learning style10 modes available
The Big Idea

What if your methods could tell you exactly what they did, instead of leaving you guessing?

The Scenario

Imagine you are baking cookies and writing down each step on paper. After baking, you want to know how many cookies you made, but you only wrote the steps, not the result.

The Problem

Without a way to get results back, you must guess or check manually. This wastes time and can cause mistakes, especially if you repeat the process many times.

The Solution

Return values let methods give back results, like telling you exactly how many cookies you baked. Void methods do tasks without returning anything, like just baking without counting.

Before vs After
✗ Before
void BakeCookies() { /* bake but no count returned */ }
int count = 0; // manual tracking outside
✓ After
int BakeCookies() { /* bake and return count */ return 12; }
What It Enables

It lets your program communicate results clearly, making code easier to use and understand.

Real Life Example

A calculator method returns the sum of two numbers so you can use it elsewhere, while a void method might just print a message without returning anything.

Key Takeaways

Return values send results back from methods.

Void methods perform actions without returning data.

Using both properly makes programs clearer and more powerful.

Practice

(1/5)
1. Which statement correctly describes a void method in C#?
easy
A. It does not return any value.
B. It must return an integer value.
C. It always returns a string.
D. It returns a boolean value.

Solution

  1. Step 1: Understand the meaning of void in C#

    The keyword void means the method does not return any value.
  2. Step 2: Compare with other return types

    Methods with other return types like int, string, or bool must return a value of that type, but void methods do not return anything.
  3. Final Answer:

    It does not return any value. -> Option A
  4. Quick Check:

    Void means no return value [OK]
Hint: Void means no value comes back from the method [OK]
Common Mistakes:
  • Thinking void methods return a default value
  • Confusing void with returning null
  • Assuming void methods must return something
2. Which of the following is the correct syntax for a method that returns an integer value in C#?
easy
A. public void GetNumber() { return 5; }
B. public void GetNumber() { Console.WriteLine(5); return 5; }
C. public int GetNumber() { Console.WriteLine(5); }
D. public int GetNumber() { return 5; }

Solution

  1. Step 1: Identify method return type and return statement

    The method declares int return type, so it must return an integer value using return.
  2. Step 2: Check each option for correct syntax

    public int GetNumber() { return 5; } correctly declares int and returns 5. public void GetNumber() { return 5; } is void but tries to return a value (invalid). public int GetNumber() { Console.WriteLine(5); } returns nothing despite int return type. public void GetNumber() { Console.WriteLine(5); return 5; } is void but tries to return a value (invalid).
  3. Final Answer:

    public int GetNumber() { return 5; } -> Option D
  4. Quick Check:

    Return type matches returned value [OK]
Hint: Return type must match the returned value type [OK]
Common Mistakes:
  • Returning a value from a void method
  • Not returning a value from a non-void method
  • Using Console.WriteLine instead of return
3. What is the output of the following C# code?
public class Program {
  public static int Add(int a, int b) {
    return a + b;
  }
  public static void Main() {
    int result = Add(3, 4);
    Console.WriteLine(result);
  }
}
medium
A. 7
B. 34
C. 0
D. Compile error

Solution

  1. Step 1: Understand the Add method

    The method Add takes two integers and returns their sum.
  2. Step 2: Trace the Main method execution

    Main calls Add(3, 4), which returns 7. Then it prints 7 to the console.
  3. Final Answer:

    7 -> Option A
  4. Quick Check:

    3 + 4 = 7 [OK]
Hint: Add returns sum; printed result is sum [OK]
Common Mistakes:
  • Concatenating numbers as strings
  • Confusing return with print
  • Expecting void method to return value
4. Identify the error in this C# method:
public int Multiply(int x, int y) {
  int product = x * y;
}
medium
A. Incorrect method name.
B. Variables cannot be declared inside methods.
C. Missing return statement for non-void method.
D. Method parameters must be strings.

Solution

  1. Step 1: Check method return type and body

    The method declares int return type but does not return any value.
  2. Step 2: Identify missing return statement

    Since the method is not void, it must have a return statement returning an integer value like return product;.
  3. Final Answer:

    Missing return statement for non-void method. -> Option C
  4. Quick Check:

    Non-void methods must return a value [OK]
Hint: Non-void methods must always return a value [OK]
Common Mistakes:
  • Forgetting to return a value in non-void methods
  • Thinking variable declaration is invalid inside methods
  • Assuming parameters must be strings
5. You want to create a method that prints a greeting message but does not return any value. Which method signature and body is correct in C#?
hard
A. public string Greet() { Console.WriteLine("Hello!"); return "Hello!"; }
B. public void Greet() { Console.WriteLine("Hello!"); }
C. public void Greet() { return "Hello!"; }
D. public string Greet() { Console.WriteLine("Hello!"); }

Solution

  1. Step 1: Understand method purpose and return type

    The method should print a message and not return any value, so it should be void.
  2. Step 2: Check each option for correctness

    public void Greet() { Console.WriteLine("Hello!"); } correctly uses void and prints the message without returning anything. public string Greet() { Console.WriteLine("Hello!"); return "Hello!"; } returns a string, which is not needed. public void Greet() { return "Hello!"; } tries to return a string in a void method (invalid). public string Greet() { Console.WriteLine("Hello!"); } declares string return type but does not return anything (invalid).
  3. Final Answer:

    public void Greet() { Console.WriteLine("Hello!"); } -> Option B
  4. Quick Check:

    Void method prints only, no return [OK]
Hint: Void methods do actions, no return needed [OK]
Common Mistakes:
  • Returning a value from a void method
  • Declaring return type but not returning
  • Confusing printing with returning
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