📖 Scenario: You are creating a simple program that asks a user for their name and age. Then, it will greet the user and tell them their age next year.
🎯 Goal: Build a program that reads user input from the console using Console.ReadLine(), converts the age to a number, and prints a greeting message with the age next year.
📋 What You'll Learn
Use Console.ReadLine() to get user input
Store the user name in a variable called userName
Store the user age in a variable called userAge
Convert the age input from string to integer
Print a greeting message with the user name and age next year
💡 Why This Matters
🌍 Real World
Getting user input from the console is common in simple command-line tools and learning programs.
💼 Career
Understanding how to read input and convert data types is essential for building interactive applications and processing user data.
Progress0 / 4 steps
1
Create variables for user name and age input
Create two string variables called userName and userAge and set both to empty strings.
C Sharp (C#)
Hint
Use string type and set variables to empty quotes "".
2
Read user input using Console.ReadLine()
Use Console.ReadLine() to read the user name into userName and the user age into userAge.
C Sharp (C#)
Hint
Assign Console.ReadLine() to each variable to get input from the user.
3
Convert age input to integer
Create an integer variable called age and convert userAge to an integer using int.Parse(userAge).
C Sharp (C#)
Hint
Use int.Parse() to convert the string to an integer.
4
Print greeting with age next year
Print a message using Console.WriteLine that says: "Hello, {userName}! Next year, you will be {age + 1} years old." Use string interpolation with $"...".
C Sharp (C#)
Hint
Use Console.WriteLine with $"..." to insert variables inside the string.
Practice
(1/5)
1. What does Console.ReadLine() do in a C# program?
easy
A. Reads a line of text input from the user as a string
B. Prints a line of text to the console
C. Terminates the program immediately
D. Converts a string to an integer
Solution
Step 1: Understand the purpose of Console.ReadLine()
Console.ReadLine() waits for the user to type something and press Enter, then returns that input as a string.
Step 2: Differentiate from other console methods
Console.WriteLine prints text, and conversion methods change data types, but Console.ReadLine specifically reads input as string.
Final Answer:
Reads a line of text input from the user as a string -> Option A
Quick Check:
Console.ReadLine() = reads string input [OK]
Hint: Remember: ReadLine always returns a string from user input [OK]
Common Mistakes:
Thinking Console.ReadLine prints output
Assuming it converts input automatically
Confusing it with Console.ReadKey
2. Which of the following is the correct way to read a user's input into a string variable named name?
easy
A. string name = Console.Read();
B. string name = Console.ReadLine();
C. string name = Console.WriteLine();
D. string name = Console.ReadKey();
Solution
Step 1: Identify the correct method to read a full line
Console.ReadLine() reads the entire line of input as a string, suitable for storing in a string variable.
Step 2: Check other options for correctness
Console.Read() reads a single character as int, Console.WriteLine() outputs text, Console.ReadKey() reads a single key press.
Final Answer:
string name = Console.ReadLine(); -> Option B
Quick Check:
Use Console.ReadLine() to read full string input [OK]
Hint: Use Console.ReadLine() to get full user input line [OK]
Common Mistakes:
Using Console.Read() which reads only one character
Confusing ReadLine with WriteLine
Using ReadKey which reads a single key press
3. What will be the output of this code if the user types 25 and presses Enter?
Console.WriteLine("Enter your age:");
string input = Console.ReadLine();
int age = int.Parse(input);
Console.WriteLine($"You are {age} years old.");
medium
A. You are age years old.
B. You are input years old.
C. You are 25 years old.
D. Runtime error
Solution
Step 1: Read input as string and convert to int
The user types "25", Console.ReadLine() returns "25" as string, then int.Parse converts it to integer 25.
Step 2: Output the formatted string with age value
The Console.WriteLine prints "You are 25 years old." using string interpolation with the integer age.
Final Answer:
You are 25 years old. -> Option C
Quick Check:
Input "25" parsed to int 25 outputs correct message [OK]
Hint: Parse input string to int before using as number [OK]
Common Mistakes:
Not converting string to int before use
Using variable names as literal text
Expecting Console.ReadLine to return int directly
4. Identify the error in this code snippet:
Console.WriteLine("Enter a number:");
int number = Console.ReadLine();
Console.WriteLine(number);
medium
A. Console.ReadLine() cannot be assigned directly to an int variable
B. Console.WriteLine should be Console.ReadLine
C. Missing semicolon after Console.WriteLine
D. int cannot be used for numbers
Solution
Step 1: Check the assignment of Console.ReadLine()
Console.ReadLine() returns a string, but the code tries to assign it directly to an int variable, causing a type error.
Step 2: Correct way to convert input string to int
The input string should be converted using int.Parse() or int.TryParse() before assigning to an int variable.
Final Answer:
Console.ReadLine() cannot be assigned directly to an int variable -> Option A
Quick Check:
Convert string input to int before assignment [OK]
Hint: Always convert Console.ReadLine() string to int before assignment [OK]
Common Mistakes:
Assigning string directly to int without conversion
Confusing Console.WriteLine and Console.ReadLine
Ignoring type mismatch errors
5. You want to read two numbers from the user, add them, and print the result. Which code correctly does this using Console.ReadLine()?
hard
A. Console.WriteLine("Enter two numbers:"); int sum = Console.ReadLine() + Console.ReadLine(); Console.WriteLine(sum);
B. string a = Console.ReadLine(); string b = Console.ReadLine(); int sum = a + b; Console.WriteLine(sum);
C. int a = Console.ReadLine(); int b = Console.ReadLine(); int sum = a + b; Console.WriteLine(sum);
D. int a = int.Parse(Console.ReadLine()); int b = int.Parse(Console.ReadLine()); int sum = a + b; Console.WriteLine(sum);
Solution
Step 1: Read input lines and convert to integers
Use int.Parse(Console.ReadLine()) to convert each input string to an integer before adding.
Step 2: Add the integers and print the sum
Sum the two integers and print the result using Console.WriteLine.
Final Answer:
int a = int.Parse(Console.ReadLine()); int b = int.Parse(Console.ReadLine()); int sum = a + b; Console.WriteLine(sum); -> Option D
Quick Check:
Convert inputs to int before adding to get correct sum [OK]
Hint: Parse inputs to int before adding numbers [OK]
Common Mistakes:
Adding strings instead of integers
Assigning Console.ReadLine() directly to int
Not converting input before arithmetic
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.