📖 Scenario: You are creating a simple program to manage a list of fruit names. You will practice basic string handling in C++.
🎯 Goal: Build a program that stores fruit names, checks for a specific fruit, counts how many fruits have names longer than a certain length, and then prints the results.
📋 What You'll Learn
Create a vector of strings with exact fruit names
Create an integer variable for length threshold
Use a for loop to count fruits with names longer than the threshold
Print the count and whether a specific fruit is in the list
💡 Why This Matters
🌍 Real World
Managing lists of names or items is common in apps like shopping lists, contact managers, or inventory systems.
💼 Career
Basic string handling and loops are foundational skills for software developers working with user input, data processing, and text analysis.
Progress0 / 4 steps
1
Create the fruit list
Create a std::vector<std::string> called fruits with these exact entries: "apple", "banana", "cherry", "date", "elderberry".
C++
Hint
Use std::vector<std::string> fruits = { ... }; to create the list.
2
Set the length threshold
Create an int variable called length_threshold and set it to 5.
C++
Hint
Write int length_threshold = 5; to create the variable.
3
Count fruits longer than threshold
Create an int variable called count_long and set it to 0. Then use a for loop with variable fruit to iterate over fruits. Inside the loop, increase count_long by 1 if fruit.length() is greater than length_threshold.
C++
Hint
Use for (const std::string& fruit : fruits) to loop over the fruits.
4
Print the results
Use std::cout to print the text "Number of fruits longer than 5: " followed by count_long. Then check if "banana" is in fruits using a for loop with variable fruit. If found, print "Banana is in the list.", otherwise print "Banana is not in the list.".
C++
Hint
Use std::cout to print messages and a for loop to find "banana".
Practice
(1/5)
1. What does the following C++ code do? std::string s = "Hello"; int len = s.length();
easy
A. Changes the string s to "length"
B. Stores the length of the string "Hello" in variable len
C. Prints the string length to the screen
D. Deletes the string s
Solution
Step 1: Understand the string initialization
The code creates a string variable s with the value "Hello".
Step 2: Understand the length() function
The length() function returns the number of characters in the string, which is 5 for "Hello".
Final Answer:
Stores the length of the string "Hello" in variable len -> Option B
Quick Check:
string length = 5 [OK]
Hint: length() returns number of characters in a string [OK]
Common Mistakes:
Thinking length() changes the string
Confusing length() with printing
Assuming length() deletes the string
2. Which of the following is the correct way to declare and initialize a string in C++?
easy
A. std::string s = "Hello";
B. string s = 'Hello';
C. char s = "Hello";
D. string s = Hello;
Solution
Step 1: Check string declaration syntax
In C++, strings are declared using std::string and initialized with double quotes "".
Step 2: Analyze each option
std::string s = "Hello"; uses std::string with double quotes correctly. string s = 'Hello'; uses single quotes which are for single characters. char s = "Hello"; uses char which holds one character, not a string. string s = Hello; misses quotes around Hello.
Final Answer:
std::string s = "Hello"; -> Option A
Quick Check:
Correct string syntax uses std::string and double quotes [OK]
Hint: Use std::string and double quotes for strings [OK]
Common Mistakes:
Using single quotes for strings
Using char for multiple characters
Forgetting quotes around text
3. What is the output of this C++ code?
std::string s = "Hello"; char c = s[1]; std::cout << c << std::endl;
medium
A. o
B. H
C. l
D. e
Solution
Step 1: Understand string indexing
Strings in C++ are zero-indexed, so s[0] = 'H', s[1] = 'e'.
Step 2: Identify the character at index 1
The code stores s[1] in c, which is 'e', then prints it.
Final Answer:
e -> Option D
Quick Check:
Index 1 character = 'e' [OK]
Hint: Remember string indexing starts at 0 [OK]
Common Mistakes:
Thinking indexing starts at 1
Confusing characters at different positions
Expecting the whole string instead of one char
4. Find the error in this code snippet:
std::string s = "Hello"; char c = s.at(5); std::cout << c << std::endl;
medium
A. No error, prints 'o'
B. Compilation error: cannot assign char
C. Runtime error: out_of_range exception
D. Syntax error: wrong function name
Solution
Step 1: Check string length and indexing
The string "Hello" has length 5, valid indices are 0 to 4.
Step 2: Understand s.at(5) behavior
Accessing s.at(5) is out of range and throws a runtime exception.
Final Answer:
Runtime error: out_of_range exception -> Option C
Quick Check:
Accessing index 5 causes out_of_range error [OK]
Hint: s.at(index) throws error if index invalid [OK]
Common Mistakes:
Assuming s.at() works like s[] without error
Ignoring zero-based indexing
Confusing syntax and runtime errors
5. Given a string std::string s = "apple,banana,cherry";, which code correctly extracts the substring "banana"?
hard
A. std::string sub = s.substr(6, 6);
B. std::string sub = s.substr(5, 6);
C. std::string sub = s.substr(6, 7);
D. std::string sub = s.substr(7, 6);
Solution
Step 1: Identify the start index of "banana"
"apple," has 6 characters (indices 0 to 5), so 'b' starts at index 6.
Step 2: Determine length of "banana"
"banana" has 6 characters.
Step 3: Use substr(start, length)
Calling s.substr(6, 6) extracts 6 characters starting at index 6, which is "banana".
Final Answer:
std::string sub = s.substr(6, 6); -> Option A
Quick Check:
substr(6,6) = "banana" [OK]
Hint: Count start index and length carefully for substr() [OK]
Common Mistakes:
Off-by-one errors in start index
Wrong length parameter
Confusing substr parameters order
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.