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

Method declaration and calling in C Sharp (C#) - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - Method declaration and calling
Start Program
↓
Declare Method
↓
Main Method Calls Method
↓
Execute Method Body
↓
Return to Main
↓
Program Ends
The program starts by declaring a method, then the main method calls it, the method runs, and control returns to main.
Execution Sample
C Sharp (C#)
using System;
class Program {
  static void SayHello() {
    Console.WriteLine("Hello, friend!");
  }
  static void Main() {
    SayHello();
  }
}
This code declares a method SayHello and calls it from Main to print a greeting.
Execution Table
StepActionEvaluationOutput
1Program startsNo output
2Method SayHello declaredNo output
3Main method startsNo output
4Main calls SayHello()Call method
5SayHello executes Console.WriteLinePrints stringHello, friend!
6SayHello returns to MainNo output
7Main endsProgram ends
💡 Program ends after Main finishes execution
Variable Tracker
VariableStartAfter CallFinal
No variablesN/AN/AN/A
Key Moments - 2 Insights
Why doesn't the method run when it is declared?
Declaring a method only tells the program what it does. It runs only when called, as shown in step 4 of the execution table.
What happens after the method finishes running?
After the method finishes (step 6), control returns to the place where it was called (Main method), continuing the program.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution table, what is printed at step 5?
A"Hello, friend!"
B"SayHello"
CNothing is printed
D"Main method starts"
💡 Hint
Check the Output column at step 5 in the execution table.
At which step does the program call the method SayHello?
AStep 2
BStep 6
CStep 4
DStep 7
💡 Hint
Look at the Action column to find when SayHello is called.
If we remove the call SayHello() in Main, what changes in the execution table?
AStep 2 disappears
BStep 5 output disappears
CProgram ends earlier at step 4
DNo change at all
💡 Hint
Without calling SayHello, the method body does not run, so no output is printed.
Concept Snapshot
Method declaration syntax:
static void MethodName() {
  // code
}

Call method by name:
MethodName();

Methods run only when called.
After running, control returns to caller.
Full Transcript
This example shows how to declare a method named SayHello and call it from the Main method. The program starts, declares the method, then Main calls SayHello. The method runs and prints "Hello, friend!". After that, control returns to Main, and the program ends. Declaring a method does not run it; it runs only when called. After the method finishes, the program continues from where it left off.

Practice

(1/5)
1. What is the correct way to declare a method named Greet that returns nothing and takes no parameters in C#?
easy
A. public Greet() void { }
B. void Greet[] { }
C. void Greet { }
D. public void Greet() { }

Solution

  1. Step 1: Understand method declaration syntax

    A method declaration starts with an access modifier (like public), then the return type (void means no return), then the method name, and parentheses for parameters.
  2. Step 2: Check each option's syntax

    public void Greet() { } correctly uses 'public void Greet() { }'. Options A, B, and D have syntax errors like wrong brackets or missing parentheses.
  3. Final Answer:

    public void Greet() { } -> Option D
  4. Quick Check:

    Method declaration = public void Greet() { } [OK]
Hint: Method syntax: access + return type + name + parentheses [OK]
Common Mistakes:
  • Using square brackets [] instead of parentheses ()
  • Omitting parentheses after method name
  • Placing return type after method name
2. Which of the following is the correct way to call a method named CalculateSum that takes two integers as parameters?
easy
A. CalculateSum 5, 10;
B. CalculateSum[5, 10];
C. CalculateSum(5, 10);
D. CalculateSum{5, 10};

Solution

  1. Step 1: Recall method call syntax

    To call a method, use its name followed by parentheses containing arguments separated by commas.
  2. Step 2: Evaluate each option

    CalculateSum(5, 10); uses parentheses correctly. Options B, C, and D use incorrect brackets or omit parentheses, causing syntax errors.
  3. Final Answer:

    CalculateSum(5, 10); -> Option C
  4. Quick Check:

    Method call = name + parentheses + arguments [OK]
Hint: Call methods with parentheses and comma-separated arguments [OK]
Common Mistakes:
  • Using square brackets instead of parentheses
  • Omitting parentheses when calling methods
  • Using curly braces for method calls
3. What will be the output of the following C# code?
public class Program {
  public static int Double(int x) {
    return x * 2;
  }
  public static void Main() {
    int result = Double(4);
    Console.WriteLine(result);
  }
}
medium
A. 8
B. 4
C. 16
D. Compilation error

Solution

  1. Step 1: Understand the method Double

    The method takes an integer x and returns x multiplied by 2.
  2. Step 2: Trace the method call in Main

    Double(4) returns 4 * 2 = 8, which is stored in result and printed.
  3. Final Answer:

    8 -> Option A
  4. Quick Check:

    Double(4) = 8 [OK]
Hint: Multiply input by 2, then print result [OK]
Common Mistakes:
  • Confusing return value with input
  • Expecting 16 by squaring instead of doubling
  • Thinking method does not return a value
4. Identify the error in the following method declaration and fix it:
public int AddNumbers(int a, int b) {
  int sum = a + b;
}
medium
A. Add a return statement: return sum;
B. Change method return type to void
C. Remove parameters from method
D. Add semicolon after method name

Solution

  1. Step 1: Check method return type and body

    The method declares it returns an int but does not return any value.
  2. Step 2: Fix by adding a return statement

    Adding return sum; returns the calculated value, matching the return type.
  3. Final Answer:

    Add a return statement: return sum; -> Option A
  4. Quick Check:

    Return value needed for non-void methods [OK]
Hint: Non-void methods must return a value [OK]
Common Mistakes:
  • Forgetting to return a value in non-void methods
  • Changing return type incorrectly
  • Removing parameters unnecessarily
5. You want to create a method IsEven that returns true if a number is even, otherwise false. Which of the following is the correct method declaration and call to check if 7 is even?
hard
A. public bool IsEven(int num) { if(num / 2 == 0) return true; else return false; } ... bool result = IsEven(7);
B. public bool IsEven(int num) { return num % 2 == 0; } ... bool result = IsEven(7);
C. public void IsEven(int num) { if(num % 2 == 0) return true; else return false; } ... bool result = IsEven(7);
D. public int IsEven(int num) { return num % 2; } ... int result = IsEven(7);

Solution

  1. Step 1: Check method return type and logic

    Method should return bool and use modulo (%) to check evenness. public bool IsEven(int num) { return num % 2 == 0; } ... bool result = IsEven(7); correctly returns true if remainder is 0.
  2. Step 2: Verify method call and variable type

    public bool IsEven(int num) { return num % 2 == 0; } ... bool result = IsEven(7); calls IsEven(7) and stores result in a bool variable, matching the method return type.
  3. Final Answer:

    public bool IsEven(int num) { return num % 2 == 0; } ... bool result = IsEven(7); -> Option B
  4. Quick Check:

    Use modulo and bool return for even check [OK]
Hint: Use 'return num % 2 == 0;' for even check [OK]
Common Mistakes:
  • Using division instead of modulo for even check
  • Returning int instead of bool
  • Declaring method void but trying to return a value
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