Bird
Raised Fist0
C++programming~10 mins

String handling basics in C++ - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to declare a string variable named greeting.

C++
#include <iostream>
#include <string>

int main() {
    std::string [1] = "Hello";
    std::cout << greeting << std::endl;
    return 0;
}
Drag options to blanks, or click blank then click option'
Ahello
Bstr
Cmessage
Dgreeting
Attempts:
3 left
💡 Hint
Common Mistakes
Using a different variable name than the one printed.
Forgetting to include header.
2fill in blank
medium

Complete the code to get the length of the string greeting.

C++
#include <iostream>
#include <string>

int main() {
    std::string greeting = "Hello";
    std::cout << greeting.[1]() << std::endl;
    return 0;
}
Drag options to blanks, or click blank then click option'
Asize
Blength
Ccount
Dlen
Attempts:
3 left
💡 Hint
Common Mistakes
Using len() which is not a C++ string method.
Using count() which does not exist for strings.
3fill in blank
hard

Fix the error in the code to concatenate two strings correctly.

C++
#include <iostream>
#include <string>

int main() {
    std::string first = "Hello, ";
    std::string second = "World!";
    std::string combined = first [1] second;
    std::cout << combined << std::endl;
    return 0;
}
Drag options to blanks, or click blank then click option'
A*
B&
C+
D&&
Attempts:
3 left
💡 Hint
Common Mistakes
Using & which is for addresses or references.
Using * which is for multiplication.
4fill in blank
hard

Fill both blanks to create a substring from greeting starting at index 2 with length 3.

C++
#include <iostream>
#include <string>

int main() {
    std::string greeting = "Hello";
    std::string part = greeting.substr([1], [2]);
    std::cout << part << std::endl;
    return 0;
}
Drag options to blanks, or click blank then click option'
A2
B3
C1
D4
Attempts:
3 left
💡 Hint
Common Mistakes
Swapping the start index and length.
Using incorrect indices causing wrong substring.
5fill in blank
hard

Fill all three blanks to check if the string greeting contains the character 'e' using find method.

C++
#include <iostream>
#include <string>

int main() {
    std::string greeting = "Hello";
    if (greeting.[1]([2]) [3] std::string::npos) {
        std::cout << "Found 'e'" << std::endl;
    } else {
        std::cout << "Not found" << std::endl;
    }
    return 0;
}
Drag options to blanks, or click blank then click option'
Afind
B'e'
C!=
D==
Attempts:
3 left
💡 Hint
Common Mistakes
Using == instead of != in the condition.
Searching for a string instead of a character.

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

  1. Step 1: Understand the string initialization

    The code creates a string variable s with the value "Hello".
  2. Step 2: Understand the length() function

    The length() function returns the number of characters in the string, which is 5 for "Hello".
  3. Final Answer:

    Stores the length of the string "Hello" in variable len -> Option B
  4. 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

  1. Step 1: Check string declaration syntax

    In C++, strings are declared using std::string and initialized with double quotes "".
  2. 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.
  3. Final Answer:

    std::string s = "Hello"; -> Option A
  4. 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

  1. Step 1: Understand string indexing

    Strings in C++ are zero-indexed, so s[0] = 'H', s[1] = 'e'.
  2. Step 2: Identify the character at index 1

    The code stores s[1] in c, which is 'e', then prints it.
  3. Final Answer:

    e -> Option D
  4. 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

  1. Step 1: Check string length and indexing

    The string "Hello" has length 5, valid indices are 0 to 4.
  2. Step 2: Understand s.at(5) behavior

    Accessing s.at(5) is out of range and throws a runtime exception.
  3. Final Answer:

    Runtime error: out_of_range exception -> Option C
  4. 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

  1. Step 1: Identify the start index of "banana"

    "apple," has 6 characters (indices 0 to 5), so 'b' starts at index 6.
  2. Step 2: Determine length of "banana"

    "banana" has 6 characters.
  3. Step 3: Use substr(start, length)

    Calling s.substr(6, 6) extracts 6 characters starting at index 6, which is "banana".
  4. Final Answer:

    std::string sub = s.substr(6, 6); -> Option A
  5. 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 unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard