C# cơ bản

Đọc dữ liệu từ bàn phím trong C#

Trong bài học này, bạn sẽ đọc dữ liệu người dùng nhập vào bằng Console.ReadLine và chuyển đổi sang số một cách an toàn với int.TryParse.

Giới thiệu

Phương thức Console.ReadLine dừng chương trình để chờ người dùng gõ một dòng và nhấn Enter, sau đó trả về dòng vừa nhập dưới dạng chuỗi. Vì dữ liệu nhận được luôn là chuỗi, bạn cần chuyển đổi nó sang số trước khi tính toán, và phải xử lý trường hợp người dùng nhập sai.

Console.ReadLine có thể trả về null khi không còn dữ liệu đầu vào, vì vậy toán tử ?? cung cấp một giá trị mặc định như "friend". Phương thức int.TryParse thử chuyển chuỗi thành số và trả về false thay vì gây lỗi nếu chuỗi không hợp lệ, còn kết quả được đưa ra qua biến out int age. Khi chạy trên trình biên dịch online, hãy gõ câu trả lời lúc lời nhắc xuất hiện.

Ví dụ C# chạy được

C#
Chạy code →
Program.cs
using System;

class Program
{
    static void Main()
    {
        // Console.ReadLine returns the typed line, or null when input ends.
        Console.Write("What is your name? ");
        string name = Console.ReadLine() ?? "friend";

        // int.TryParse converts text safely instead of throwing on bad input.
        Console.Write("How old are you? ");
        string text = Console.ReadLine() ?? "";
        if (int.TryParse(text, out int age))
        {
            Console.WriteLine($"Hello, {name}!");
            Console.WriteLine($"In 10 years you will be {age + 10}.");
        }
        else
        {
            Console.WriteLine($"\"{text}\" is not a whole number.");
        }
    }
}
Kết quả khi chạy
What is your name? Ada
How old are you? 29
Hello, Ada!
In 10 years you will be 39.

Luyện tập với trình gỡ lỗi

Đặt breakpoint ở một phép gán hoặc điều kiện quan trọng, bấm Debug và xem giá trị các biến cục bộ (local variable) trước khi bước sang dòng tiếp theo.

Luyện tập với thử thách

Áp dụng kiến thức của bài học này để giải một bài toán thực tế. Mỗi thử thách chạy ngay trên trình duyệt, có kiểm thử tức thì và AI nhận xét.

Tất cả thử thách