Nhập xuất trong C++ – Bắt Đầu Lập Trình

Nhập xuất trong C++

Nhập xuất dữ liệu là một trong những tính năng quan trọng của ngôn ngữ lập trình, nó giúp bạn xuất kết quả chương trình, biểu diễn thông tin và thậm chí là Debug. C++ cũng hỗ trợ nhập xuất dữ liệu và trong bài viết này mình sẽ hướng dẫn các bạn các cú pháp nhập xuất cơ bản của C++.

Chuẩn bị

Mĩnh sẽ sử dụng công cụ Visual Studio Code (VSCode), công cụ này mình đã hướng dẫn các bạn setup chi tiết trong bài Setup Visual Studio Code cho C++. Các bạn có thể sử dụng các công cụ khác như Visual Studio, CodeBlock hoặc DevC++ để code C++.

Đầu tiên các bạn cần viết hàm main và thêm thư viện nhập xuất là iostream vào file cpp.

#include <iostream>

int main() {

    return 0;
}

Nhập xuất số nguyên

Để nhập dữ liệu cho một biến các bạn sử dụng cú pháp sau:

std::cin >> Tên_biến;

Để xuất dữ liệu của một biến các bạn sử dụng cú pháp sau:

std::cout << Tên_biến;

Các bước nhập xuất một số nguyên:

  • B1: khai báo một biến kiểu int có tên là int_number.
  • B2: Sử dụng cú pháp nhập để nhập dữ liệu cho biến int_number.
  • B3: Sử dụng cú pháp xuất để xuất dữ liệu của biến int_number.
#include <iostream>

int main() {
    int int_number;
    std::cin >> int_number;
    std::cout << int_number << '\n';
    return 0;
}

Để chạy chương trình trên VSCode, các bạn dùng phím tắt Ctrl + Alt + n. Mình nhập vào số 5 và chương trình sẽ xuất ra số 5.

Nhập xuất số nguyên

Nhập xuất số thực

Các bước nhập xuất một số thực:

  • B1: khai báo một biến kiểu float có tên là float_number.
  • B2: Sử dụng cú pháp nhập để nhập dữ liệu cho biến float_number.
  • B3: Sử dụng cú pháp xuất để xuất dữ liệu của biến float_number.
#include <iostream>

int main() {
    float float_number;
    std::cin >> float_number;
    std::cout << float_number << '\n';
    return 0;
}

Để chạy chương trình trên VSCode, các bạn dùng phím tắt Ctrl + Alt + n. Mình nhập vào số 5.5 và chương trình sẽ xuất ra số 5.5.

Nhập xuất số thực.

Nhập xuất một kí tự

Các bước nhập xuất một kí tự:

  • B1: khai báo một biến kiểu char có tên là character.
  • B2: Dùng cú pháp nhập để nhập dữ liệu cho biến character.
  • B3: Dùng cú pháp xuất để xuất dữ liệu của biến character.
#include <iostream>

int main() {
    char character;
    std::cin >> character;
    std::cout << character << '\n';
    return 0;
}

Để chạy chương trình trên VSCode, các bạn dùng phím tắt Ctrl + Alt + n. Mình nhập vào kì tự h và chương trình sẽ xuất ra kí tự h.

Nhập xuất 1 kí tự.

Nhập xuất Chuỗi

Đối với chuỗi thì có 2 cách biểu diễn:

  • Dùng một mảng các kí tự.
  • Dùng kiểu dữ liệu std::string của C++.

Chuỗi là mảng các kí tự

Các bước nhập xuất một chuỗi là mảng các kí tự:

  • B1: khai báo một mảng kiểu char có tên là str.
  • B2: Dùng cú pháp nhập để nhập dữ liệu cho mảng str.
  • B3: Dùng cú pháp xuất để xuất dữ liệu của mảng str.
#include <iostream>

int main() {
    // tạo một mảng kí tự với 256 phần tử
    char str[256];
    std::cin >> str;
    std::cout << str << '\n';
    return 0;
}

Để chạy chương trình trên VSCode, các bạn dùng phím tắt Ctrl + Alt + n. Mình nhập vào một chuỗi batdaulaptrinh và chương trình sẽ xuất ra chuỗi batdaulaptrinh.

Nhập xuất một mảng kí tự với std::cin.

Cách này sẽ chỉ hoạt động được với chuỗi là các kí tự liền nhau và không có dấu cách, nếu bạn cố tình nhập vào một chuỗi có dấu cách thì kết quả hiển thị ra sẽ không đúng với mong muốn, cụ thể với demo như hình dưới:

Kết quả sai khi nhập một chuỗi có dấu cách với std::cin.

Để nhập được một chuỗi có dấu cách các bạn cần sử dụng hàm getline với cú pháp như sau:

std::cin.getline(mảng_kí_tự, kích_thước_chuỗi);

Chương trình nhập xuất một chuỗi là mảng các kí tự có dấu cách

#include <iostream>

int main() {
    char str[256];
    // LUÔN PHẢI chừa lại kí tự cuối cùng
    std::cin.getline(str, 255);
    std::cout << str << '\n';
    return 0;
}

Nhập một mảng kí tự có chứa dấu cách.

Cách này vẫn có một lỗi là không nhập được chuỗi nếu bạn đã nhập dữ liệu cho một biến bất kì trước khi gọi hàm getline. Để khác phục vấn đề này thì các bạn cần dùng hàm ignore trước hàm getline:

// Bỏ qua kí tự 1 kí tự cuối cùng trong bộ đệm 
std::cin.ignore(1);
std::cin.getline(mảng_kí_tự, kích_thước_chuỗi);

Chuỗi là kiểu std::string

Đế sử dụng kiểu std::string bạn cần thêm thư viện string vào file mã nguồn.

Các bước nhập xuất một chuỗi là mảng các kí tự:

  • B1: khai báo một biến kiểu std::string có tên là s.
  • B2: Dùng cú pháp nhập để nhập dữ liệu cho biến s.
  • B3: Dùng cú pháp xuất để xuất dữ liệu của biến s.
#include <iostream>
#include <string>

int main() {
    std::string s;
    std::cin >> s;
    std::cout << s << '\n';
    return 0;
}

Để chạy chương trình trên VSCode, các bạn dùng phím tắt Ctrl + Alt + n. Mình nhập vào một chuỗi batdaulaptrinh và chương trình sẽ xuất ra chuỗi batdaulaptrinh.

Nhập một chuỗi kiểu std::string với std::cin.

Cũng giống như chuỗi là mảng cách kí tự thì cách này sẽ chỉ hoạt động được với chuỗi là các kí tự liền nhau và không có dấu cách, nếu bạn cố tình nhập vào một chuỗi có dấu cách thì kết quả hiển thị ra sẽ không đúng với mong muốn, cụ thể với demo như hình dưới:

Kết quả sai khi nhập chuỗi có dấu cách cho biến kiểu std::string bằng std::cin.

Để nhập được một chuỗi có dấu cách các bạn cũng sử dụng hàm getline với nhưng với cú pháp khác một chút:

std::getline(std::cin, Tên_biến);

Chương trình để nhập một chuỗi kiểu std::string có dấu cách:

#include <iostream>
#include <string>

int main() {
    std::string s;
    std::getline(std::cin, s);
    std::cout << s << '\n';
    return 0;
}

Nhập một chuối kiểu std::string có chứa dấu cách.

Cách này vẫn có một lỗi là không nhập được chuỗi nếu bạn đã nhập dữ liệu cho một biến bất kì trước khi gọi tới hàm getline. Để khác phục vấn đề này thì các bạn thêm hàm ignore vào trước hàm getline là được:

// Bỏ qua kí tự 1 kí tự cuối cùng trong bộ đệm 
std::cin.ignore(1);
std::getline(std::cin, Tên_biến);

Kết bài

Vậy là mình vừa giới thiệu cho các bạn những cú pháp cơ bản của nhập xuất số, kí tự và chuỗi trong C++, hi vọng qua bài viết này, các bạn sẽ có được những kiến thức cơ bản về nhập xuất trong C++ để giúp ích cho các bạn trong việc hiển thị và biểu diễn dữ liệu. Chúc các bạn học vui vẻ!

Chia sẻ ngay