📖 Scenario: You are creating a simple program to greet users by their name. This program will use a method to print a greeting message.
🎯 Goal: Build a C# program that declares a method called GreetUser which takes a string parameter name and prints a greeting message. Then call this method with a specific name.
📋 What You'll Learn
Declare a method named GreetUser that takes one string parameter called name.
Inside the method, print the message Hello, {name}! using the parameter.
Call the GreetUser method from the Main method with the argument "Alice".
💡 Why This Matters
🌍 Real World
Methods help organize code into reusable blocks, making programs easier to read and maintain.
💼 Career
Understanding method declaration and calling is essential for any software development job using C#.
Progress0 / 4 steps
1
Create the Main method and class
Create a class called Program and inside it create a Main method with the signature static void Main().
C Sharp (C#)
Hint
The Main method is the starting point of a C# program.
2
Declare the GreetUser method
Inside the Program class but outside the Main method, declare a static method called GreetUser that takes a string parameter named name and returns void.
C Sharp (C#)
Hint
Remember to place the method inside the class but outside the Main method.
3
Add greeting message inside GreetUser
Inside the GreetUser method, write a line to print the message Hello, {name}! using Console.WriteLine and string interpolation.
C Sharp (C#)
Hint
Use $"Hello, {name}!" inside Console.WriteLine to insert the name.
4
Call the GreetUser method from Main
Inside the Main method, call the GreetUser method with the argument "Alice".
C Sharp (C#)
Hint
Call the method by writing GreetUser("Alice"); inside Main.
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
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.
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.
Final Answer:
public void Greet() { } -> Option D
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
Step 1: Recall method call syntax
To call a method, use its name followed by parentheses containing arguments separated by commas.
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.
Final Answer:
CalculateSum(5, 10); -> Option C
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
Step 1: Understand the method Double
The method takes an integer x and returns x multiplied by 2.
Step 2: Trace the method call in Main
Double(4) returns 4 * 2 = 8, which is stored in result and printed.
Final Answer:
8 -> Option A
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
Step 1: Check method return type and body
The method declares it returns an int but does not return any value.
Step 2: Fix by adding a return statement
Adding return sum; returns the calculated value, matching the return type.
Final Answer:
Add a return statement: return sum; -> Option A
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
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.
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.
Final Answer:
public bool IsEven(int num) { return num % 2 == 0; } ... bool result = IsEven(7); -> Option B
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 unknownstrongwhile earning +1 Grip toward your certificate.