You want to create an associative array user_ages that stores names as keys and ages as values. Which script correctly adds entries and prints all names with their ages?
hard🚀 Application Q15 of 15
Bash Scripting - Arrays
You want to create an associative array user_ages that stores names as keys and ages as values. Which script correctly adds entries and prints all names with their ages?
Adeclare -A user_ages
user_ages=( [Alice]=30 [Bob]=25 )
for name in "${!user_ages[@]}"; do
echo "$name is ${user_ages[$name]} years old"
done
Bdeclare user_ages
user_ages=( Alice=30 Bob=25 )
for name in "${user_ages[@]}"; do
echo "$name is ${user_ages[$name]} years old"
done
Cdeclare -A user_ages
user_ages=( Alice:30 Bob:25 )
for name in "${!user_ages[@]}"; do
echo "$name is ${user_ages[$name]} years old"
done
Ddeclare -a user_ages
user_ages=( [Alice]=30 [Bob]=25 )
for name in "${!user_ages[@]}"; do
echo "$name is ${user_ages[$name]} years old"
done
Step-by-Step Solution
Solution:
Step 1: Check declaration and assignment
declare -A user_ages
user_ages=( [Alice]=30 [Bob]=25 )
for name in "${!user_ages[@]}"; do
echo "$name is ${user_ages[$name]} years old"
done correctly declares an associative array with declare -A and assigns keys and values using ( [key]=value ) syntax.
Step 2: Verify loop and output
The loop uses ${!user_ages[@]} to get keys and prints each name with its age correctly.
Final Answer:
Option A script correctly adds and prints associative array entries -> Option A
Quick Check:
Use declare -A and [key]=value syntax for associative arrays [OK]
Quick Trick:Use declare -A and [key]=value syntax for associative arrays [OK]
Common Mistakes:
MISTAKES
Using declare -a which is for indexed arrays
Incorrect key-value syntax like colons or missing brackets
Looping over values instead of keys
Master "Arrays" in Bash Scripting
9 interactive learning modes - each teaches the same concept differently