📖 Scenario: Imagine you are organizing a small library system. You want to assign specific ID numbers to some books so you can find them easily later.
🎯 Goal: You will create a dictionary to store book titles with their explicit ID numbers, then print the dictionary to see the assignments.
📋 What You'll Learn
Create a dictionary called bookIds with exact book titles as keys and their explicit ID numbers as values.
Create a variable called newBookId and assign it the value 105.
Add a new book with the title "The Hobbit" and the ID stored in newBookId to the dictionary.
Print the bookIds dictionary to show all book titles and their IDs.
💡 Why This Matters
🌍 Real World
Assigning explicit IDs to items like books helps organize and find them quickly in real systems like libraries or inventory management.
💼 Career
Understanding explicit value assignment and dictionary usage is important for software developers working with data storage, lookup tables, and configuration settings.
Progress0 / 4 steps
1
Create the initial dictionary with explicit values
Create a dictionary called bookIds with these exact entries: "1984": 101, "Brave New World": 102, "Fahrenheit 451": 103.
C Sharp (C#)
Hint
Use new Dictionary<string, int> { {"key", value}, ... } to create the dictionary with explicit values.
2
Add a new explicit value variable
Create an integer variable called newBookId and assign it the value 105.
C Sharp (C#)
Hint
Use int newBookId = 105; to assign the explicit value.
3
Add a new book with explicit ID to the dictionary
Add a new entry to the bookIds dictionary with the key "The Hobbit" and the value from the variable newBookId.
C Sharp (C#)
Hint
Use bookIds["The Hobbit"] = newBookId; to add the new entry.
4
Print the dictionary to show all book IDs
Use a foreach loop with variables title and id to iterate over bookIds. Inside the loop, print each book title and its ID in the format: "{title}: {id}".
C Sharp (C#)
Hint
Use foreach (var kvp in bookIds) and Console.WriteLine($"{kvp.Key}: {kvp.Value}") to print each entry.
Practice
(1/5)
1. What does explicit value assignment mean in C#? int x = 5;
easy
A. Changing a variable's value later in the code
B. Setting a variable to a specific value directly
C. Using a variable without declaring it
D. Declaring a variable without a value
Solution
Step 1: Understand explicit assignment
Explicit assignment means giving a variable a clear value when you create it, like int x = 5;.
Step 2: Compare options
Only Setting a variable to a specific value directly describes setting a variable directly to a value. Other options describe different concepts.
Final Answer:
Setting a variable to a specific value directly -> Option B
Quick Check:
Explicit assignment = direct value set [OK]
Hint: Look for direct value given with = sign [OK]
Common Mistakes:
Confusing declaration with assignment
Thinking assignment means changing value later
Mixing variable declaration without value
2. Which of the following is the correct syntax for explicit value assignment in C#?
easy
A. int number == 10;
B. int number : 10;
C. int number <- 10;
D. int number = 10;
Solution
Step 1: Recall C# assignment syntax
In C#, the assignment operator is a single equals sign = used like int number = 10;.
Step 2: Check each option
int number = 10; uses = correctly. Options A, B, and D use invalid symbols for assignment.
Final Answer:
int number = 10; -> Option D
Quick Check:
Assignment uses = in C# [OK]
Hint: Remember assignment uses single = sign [OK]
Common Mistakes:
Using double equals == which is for comparison
Using colon or arrow instead of =
Confusing assignment with declaration syntax
3. What will be the output of this C# code?
const int max = 100;
int current = 50;
current = max;
Console.WriteLine(current);
medium
A. 50
B. Compile-time error
C. 100
D. 0
Solution
Step 1: Understand variable assignments
The constant max is set to 100 and cannot change. The variable current starts at 50.
Step 2: Assign constant value to variable
The line current = max; sets current to 100. This is allowed because variables can change.
Final Answer:
100 -> Option C
Quick Check:
Variable current = constant max value 100 [OK]
Hint: Constants can assign to variables, variables can change [OK]
Common Mistakes:
Thinking assigning constant to variable causes error
Confusing constant with variable mutability
Expecting output to be initial variable value
4. Identify the error in this code snippet:
const int limit = 10;
limit = 20;
medium
A. Cannot assign a new value to a constant
B. Missing semicolon after constant declaration
C. Variable limit is not declared
D. Syntax error in constant declaration
Solution
Step 1: Understand constant behavior
Constants in C# cannot be changed after they are set. const int limit = 10; fixes limit at 10.
Step 2: Check assignment to constant
The line limit = 20; tries to change the constant, which causes a compile-time error.
Final Answer:
Cannot assign a new value to a constant -> Option A
Quick Check:
Constants are immutable, assignment causes error [OK]
Hint: Constants cannot be changed after assignment [OK]
Common Mistakes:
Thinking constants can be reassigned
Ignoring compile-time error messages
Confusing constants with readonly variables
5. You want to create a dictionary in C# where keys are strings and values are integers assigned explicitly. Which code correctly assigns values explicitly to the dictionary entries?
hard
A. var dict = new Dictionary(); dict.Add("one", 1); dict.Add("two", 2);
B. var dict = new Dictionary(); dict["one"] == 1; dict["two"] == 2;
C. var dict = new Dictionary { "one"=1, "two"=2 };
D. var dict = new Dictionary { ("one", 1), ("two", 2) };
Solution
Step 1: Understand dictionary initialization
Explicit assignment uses the Add method: var dict = new Dictionary<string, int>(); dict.Add("one", 1); dict.Add("two", 2);.
Step 2: Check syntax correctness
var dict = new Dictionary(); dict["one"] == 1; dict["two"] == 2; uses == which is invalid for assignment. var dict = new Dictionary { "one"=1, "two"=2 }; uses { "one"=1 } syntax invalid for Dictionary. var dict = new Dictionary { ("one", 1), ("two", 2) }; uses parentheses invalid for initialization.
Step 3: Choose the best explicit assignment
var dict = new Dictionary(); dict.Add("one", 1); dict.Add("two", 2); explicitly assigns values using Add method, which is clear and correct.
Final Answer:
var dict = new Dictionary<string, int>(); dict.Add("one", 1); dict.Add("two", 2); -> Option A
Quick Check:
Use Add method for explicit dictionary assignments [OK]
Hint: Use .Add(key, value) method [OK]
Common Mistakes:
Using == instead of = for assignment
Wrong syntax for dictionary initialization
Confusing tuples with dictionary entries
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.