📖 Scenario: You are managing a list of daily tasks. Sometimes, you need to add a new urgent task at the very start of your list so you don't forget it.
🎯 Goal: Build a program that inserts a new task at the beginning of an existing array of tasks.
📋 What You'll Learn
Create an array called tasks with these exact values: "Email", "Meeting", "Coding"
Create a string variable called newTask and set it to "Urgent"
Create a new array called updatedTasks that inserts newTask at the beginning followed by all elements of tasks
Print the updatedTasks array elements separated by " -> "
💡 Why This Matters
🌍 Real World
Managing task lists or schedules often requires adding urgent items at the start to prioritize them.
💼 Career
Understanding array manipulation is fundamental for software development, especially when working with fixed-size data collections.
Progress0 / 4 steps
1
Create the initial array of tasks
Create an array called tasks with these exact values: "Email", "Meeting", "Coding"
DSA C#
Hint
Use string[] tasks = { "Email", "Meeting", "Coding" }; to create the array.
2
Create the new task variable
Create a string variable called newTask and set it to "Urgent"
DSA C#
Hint
Use string newTask = "Urgent"; to create the variable.
3
Insert the new task at the beginning
Create a new array called updatedTasks that inserts newTask at the beginning followed by all elements of tasks
DSA C#
Hint
Create a new array with size one more than tasks. Put newTask at index 0, then copy all tasks elements starting at index 1.
4
Print the updated tasks
Print the updatedTasks array elements separated by " -> "
DSA C#
Hint
Use Console.WriteLine(string.Join(" -> ", updatedTasks)); to print the array elements separated by arrows.
Practice
(1/5)
1. What happens when you insert an element at the beginning of a fixed-size array in C#?
easy
A. The last element is removed and the new element is added at the start.
B. The new element replaces the first element without shifting others.
C. The array size automatically increases to fit the new element.
D. All existing elements shift one position to the right to make space.
Solution
Step 1: Understand fixed-size array behavior
In C#, arrays have fixed size, so to insert at the beginning, elements must shift right.
Step 2: Effect of insertion at index 0
The element at index 0 is replaced by the new element, and all others move one index higher.
Final Answer:
All existing elements shift one position to the right to make space. -> Option D
Quick Check:
Insert at start = shift right [OK]
Hint: Insert at start means shift all elements right [OK]
Common Mistakes:
Thinking array size grows automatically
Replacing first element without shifting
Removing last element silently
2. Which of the following C# code snippets correctly inserts an integer 5 at the beginning of an array arr of size 5, shifting elements right?
easy
A. for (int i = arr.Length - 1; i > 0; i--) { arr[i] = arr[i - 1]; } arr[0] = 5;
B. for (int i = 0; i < arr.Length - 1; i++) { arr[i] = arr[i + 1]; } arr[arr.Length - 1] = 5;
C. arr[0] = 5; // No shifting needed
D. arr[arr.Length] = 5; // Add at end
Solution
Step 1: Identify correct loop for shifting right
Loop must start from the end and move elements one step right to avoid overwriting.
Step 2: Assign new value at index 0
After shifting, assign 5 to arr[0].
Final Answer:
for (int i = arr.Length - 1; i > 0; i--) { arr[i] = arr[i - 1]; } arr[0] = 5; -> Option A
Quick Check:
Shift right from end, then insert [OK]
Hint: Shift from end to start to avoid overwrite [OK]
Common Mistakes:
Shifting left instead of right
Assigning without shifting
Using invalid index arr.Length
3. What is the output of the following C# code?
int[] arr = {10, 20, 30, 40, 50};
for (int i = arr.Length - 1; i > 0; i--) {
arr[i] = arr[i - 1];
}
arr[0] = 5;
foreach (int num in arr) {
Console.Write(num + " ");
}
medium
A. 5 10 20 30 50
B. 5 10 20 30 40
C. 5 20 30 40 50
D. 10 5 20 30 40
Solution
Step 1: Shift elements right
Elements move right: arr[4]=arr[3]=40, arr[3]=arr[2]=30, arr[2]=arr[1]=20, arr[1]=arr[0]=10
Step 2: Insert 5 at index 0
arr[0] = 5
Final Answer:
5 10 20 30 40 -> Option B
Quick Check:
Shift right + insert 5 at start = 5 10 20 30 40 [OK]
Hint: Trace shifts from end, then insert new value [OK]
Common Mistakes:
Not shifting elements correctly
Overwriting elements before shifting
Incorrect final array print
4. The following code attempts to insert 99 at the beginning of an array arr but produces incorrect output. What is the error?
int[] arr = {1, 2, 3, 4, 5};
for (int i = 0; i < arr.Length - 1; i++) {
arr[i + 1] = arr[i];
}
arr[0] = 99;
medium
A. The loop shifts elements left instead of right, overwriting data.
B. The assignment to arr[0] should be inside the loop.
C. The loop index range is incorrect; it should start from the end.
D. The array size is too small to insert a new element.
Solution
Step 1: Analyze loop direction and range
The loop starts from 0 and moves forward, causing overwriting of elements.
Step 2: Correct loop should start from end
To shift right safely, loop must start from last index and move backward.
Final Answer:
The loop index range is incorrect; it should start from the end. -> Option C
Quick Check:
Shift right requires backward loop [OK]
Hint: Shift right needs backward loop from end [OK]
Common Mistakes:
Looping forward overwrites elements
Assigning new value inside loop
Ignoring fixed array size
5. You have an array arr = new int[6] {0, 1, 2, 3, 4, 5} and want to insert a new element 99 at the beginning without losing any data. Which approach correctly handles this?
hard
A. Create a new array of size 7, set arr2[0] = 99, then copy all elements of arr to arr2 starting at index 1.
B. Shift all elements right by one and assign 99 to arr[0], but last element is lost.
C. Replace arr[0] with 99 directly without shifting elements.
D. Use a List<int> instead of array to insert at beginning easily.
Solution
Step 1: Understand fixed array size limitation
Original array size is 6, so inserting without losing data requires a bigger array.
Step 2: Create new larger array and copy elements
Create new array size 7, assign 99 at index 0, then copy original elements starting at index 1.
Final Answer:
Create a new array of size 7, set arr2[0] = 99, then copy all elements of arr to arr2 starting at index 1. -> Option A
Quick Check:
New bigger array + copy elements = safe insertion [OK]
Hint: Use bigger array and copy to insert without loss [OK]
Common Mistakes:
Trying to insert in fixed-size array losing last element
Replacing without shifting
Ignoring better data structures like List
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.