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

Variable declaration and initialization in C Sharp (C#) - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Variable Mastery Badge
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of variable initialization with implicit typing
What is the output of this C# code snippet?
C Sharp (C#)
var number = 10;
var text = "Hello";
var result = number + text.Length;
Console.WriteLine(result);
A15
BHello10
C10
DCompilation error
Attempts:
2 left
💡 Hint
Remember that var infers the type and text.Length returns an integer.
❓ Predict Output
intermediate
2:00remaining
Value of uninitialized variable
What happens when you try to use an uninitialized local variable in C#?
C Sharp (C#)
int x;
// Console.WriteLine(x); // Uncommenting this line causes what?
ACompilation error: Use of unassigned local variable 'x'
BOutputs 0
COutputs garbage value
DRuntime exception
Attempts:
2 left
💡 Hint
Local variables must be assigned before use in C#.
❓ Predict Output
advanced
2:00remaining
Output of variable shadowing in nested scopes
What is the output of this C# code?
C Sharp (C#)
int value = 5;
{
    int value = 10;
    Console.WriteLine(value);
}
Console.WriteLine(value);
A10\n10
B5\n10
C10\n5
DCompilation error due to duplicate variable declaration
Attempts:
2 left
💡 Hint
Check if C# allows redeclaring a variable with the same name in an inner block.
❓ Predict Output
advanced
2:00remaining
Output of nullable variable initialization and usage
What is the output of this C# code?
C Sharp (C#)
int? number = null;
number ??= 100;
Console.WriteLine(number);
Anull
B0
C100
DCompilation error
Attempts:
2 left
💡 Hint
The ??= operator assigns the value only if the variable is null.
🧠 Conceptual
expert
2:00remaining
Behavior of const and readonly variables
Which statement about const and readonly variables in C# is correct?
Aconst variables can be assigned in constructors; readonly variables cannot.
Bconst variables can be assigned only at declaration and are compile-time constants; readonly variables can be assigned at declaration or in constructor and are runtime constants.
CBoth const and readonly variables can be assigned multiple times during runtime.
Dreadonly variables can be assigned only at declaration and are compile-time constants; const variables can be assigned anywhere and are runtime constants.
Attempts:
2 left
💡 Hint
Think about when the values are fixed and where assignments are allowed.

Practice

(1/5)
1. What does it mean to declare a variable in C#?
easy
A. Delete the variable from memory
B. Assign a value to a variable
C. Use the variable in a calculation
D. Specify the variable's type and name without assigning a value

Solution

  1. Step 1: Understand variable declaration

    Declaration means telling the program the variable's type and name, like int age;.
  2. Step 2: Differentiate declaration from initialization

    Initialization means giving the variable its first value, like age = 10;. Declaration alone does not assign a value.
  3. Final Answer:

    Specify the variable's type and name without assigning a value -> Option D
  4. Quick Check:

    Declaration = type + name only [OK]
Hint: Declaration sets type and name only, no value assigned [OK]
Common Mistakes:
  • Confusing declaration with initialization
  • Thinking declaration assigns a value
  • Mixing declaration with variable usage
2. Which of the following is the correct way to declare and initialize an integer variable named count with value 5 in C#?
easy
A. int count 5;
B. int count := 5;
C. int count = 5;
D. int count == 5;

Solution

  1. Step 1: Check C# syntax for declaration and initialization

    In C#, use int count = 5; to declare and assign value 5.
  2. Step 2: Identify incorrect syntax in other options

    int count := 5; uses := which is not valid in C#. int count == 5; uses == which is a comparison operator. int count 5; misses the assignment operator.
  3. Final Answer:

    int count = 5; -> Option C
  4. Quick Check:

    Use = for assignment in declaration [OK]
Hint: Use = to assign value during declaration [OK]
Common Mistakes:
  • Using := instead of =
  • Using == which is comparison
  • Omitting the assignment operator
3. What will be the output of this C# code?
int x = 10;
int y = x + 5;
Console.WriteLine(y);
medium
A. 10
B. 15
C. 5
D. Error

Solution

  1. Step 1: Understand variable initialization and calculation

    Variable x is initialized with 10. Variable y is initialized with x + 5, which is 10 + 5 = 15.
  2. Step 2: Determine output of Console.WriteLine(y)

    The program prints the value of y, which is 15.
  3. Final Answer:

    15 -> Option B
  4. Quick Check:

    10 + 5 = 15 [OK]
Hint: Add values after initialization to find output [OK]
Common Mistakes:
  • Confusing variable names
  • Forgetting to add values
  • Expecting syntax error
4. Identify the error in this C# code snippet:
int number;
number = "ten";
medium
A. Assigning string to an int variable
B. Missing semicolon after declaration
C. Variable not declared
D. Correct code, no error

Solution

  1. Step 1: Check variable type and assigned value

    The variable number is declared as int, which means it can only hold whole numbers.
  2. Step 2: Identify type mismatch in assignment

    The code tries to assign the string "ten" to an int variable, which is not allowed and causes a type error.
  3. Final Answer:

    Assigning string to an int variable -> Option A
  4. Quick Check:

    int cannot hold string values [OK]
Hint: Match variable type with assigned value type [OK]
Common Mistakes:
  • Assigning wrong data type
  • Ignoring type mismatch errors
  • Assuming implicit conversion from string to int
5. You want to declare and initialize three variables in one line: an integer a with 1, a double b with 2.5, and a string c with "hello". Which is the correct C# code?
hard
A. int a = 1; double b = 2.5; string c = "hello";
B. int a = 1, double b = 2.5, string c = "hello";
C. var a = 1, b = 2.5, c = "hello";
D. int a = 1; int b = 2.5; string c = "hello";

Solution

  1. Step 1: Understand variable declaration rules for multiple types

    In C#, you cannot declare variables of different types separated by commas in one statement. Each type requires its own declaration statement.
  2. Step 2: Analyze each option

    int a = 1, double b = 2.5, string c = "hello"; tries to declare different types in one statement separated by commas, which is invalid. int a = 1; double b = 2.5; string c = "hello"; declares each variable separately with correct types and initialization. var a = 1, b = 2.5, c = "hello"; uses var but mixes types in one statement, which is invalid. int a = 1; int b = 2.5; string c = "hello"; declares b as int but assigns a double value, causing an error.
  3. Final Answer:

    int a = 1; double b = 2.5; string c = "hello"; -> Option A
  4. Quick Check:

    Different types need separate declarations [OK]
Hint: Declare different types in separate statements [OK]
Common Mistakes:
  • Trying to declare different types in one statement
  • Assigning double to int variable
  • Using var with mixed types in one line
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