Thứ Hai, 12 tháng 10, 2020

Lập trình C++ Basic | #4. Cấu trúc của một chương trình C++

Chương 2: CÁC KHÁI NIỆM CƠ BẢN TRONG C++


Do your c, c plus plus or c sharp assignments by Rajarjs

2.1 Các thành phần (cấu trúc) của một chương trình C++

Trước tiên, bạn cần nắm rõ cấu trúc của một chương trình máy tính gồm những gì.

a. Thư viện chuẩn C++ (C++ Standard Library)

Thư viện là một tập hợp các mã được biên dịch sẵn, được đóng gói lại để lập trình viên sử dụng, mà không cần phải viết lại. Ví dụ: bạn viết một chương trình tính toán, bạn có thể include thư viện toán học…

b. Các câu lệnh và biểu thức (Statements and expressions)

  • Phổ biến nhất trong một chương trình máy tính là câu lệnh (Statements). Trong C++, câu lệnh là đơn vị độc lập nhỏ nhất. Mỗi câu lệnh sẽ là một yêu cầu Compiler thực hiện một nhiệm vụ nhất định.
  • Câu lệnh trong C++ kết thúc bằng một dấu chấm phẩy “;”.

Ví dụ:
 một số câu lệnh cơ bản trong C++:

#include <conio.h>
#include <stdio.h>
#include <string.h>
#include <iostream>
using namespace std; 

int main()

{
int age;
age = 10;
cout << " Toi moi " << age << " tuoi.\n";
cout << " Toi con qua tre de choi game.\n";
system("pause");

    return 0;
}

Trong đoạn code trên:

  • Các dòng #include để thêm vào các thư viện lập trình.
  • using name space std (tạm dịch là không gian tên) là một cơ chế trong C++ cho phép chúng ta phân nhóm các thực thể như class, object, function thành những nhóm riêng biệt, mỗi nhóm đó được đặt cho một cái tên, gọi là không gian tên (namespaceint age là câu lệnh khai báo, và age là một biến số nguyên. Biến được khai báo là tên gọi cho một vùng trong bộ nhớ, dùng để lưu giá trị và có thể thay đổi được. Biến phải được khai báo trước khi sử dụng. Phần này sẽ được nói đến trong bài BIẾN TRONG ++.age = 10 là lệnh gán. Nó dùng để gán một giá trị cho một biến, giá trị đó có thể là một giá trị cụ thể, hoặc là kết quả của một biểu thức, một hàm.
  • cout << " Toi moi " << age << " tuoi.\n" là một câu lệnh xuất thuộc thư viện iostream, nó sẽ xuất ra màn hình một câu thông báo bất kỳ hoặc có thể kèm theo giá trị của một biến.
  • using name space std (tạm dịch là không gian tên) là một cơ chế trong C++ cho phép chúng ta phân nhóm các thực thể như class, object, function thành những nhóm riêng biệt, mỗi nhóm đó được đặt cho một cái tên, gọi là không gian tên (namespace).
  • int age là câu lệnh khai báo, và age là một biến số nguyên. Biến được khai báo là tên gọi cho một vùng trong bộ nhớ, dùng để lưu giá trị và có thể thay đổi được. Biến phải được khai báo trước khi sử dụng. Phần này sẽ được nói đến trong bài BIẾN TRONG ++.
  • age = 10 là lệnh gán. Nó dùng để gán một giá trị cho một biến, giá trị đó có thể là một giá trị cụ thể, hoặc là kết quả của một biểu thức, một hàm.
  • cout << " Toi moi " << age << " tuoi.\n" là một câu lệnh xuất thuộc thư viện iostream, nó sẽ xuất ra màn hình một câu thông báo bất kỳ hoặc có thể kèm theo giá trị của một biến.

c. Hàm (Functions)
Hàm là một nhóm các câu lệnh đi cùng nhau, để thực hiện một nhiệm vụ. Mỗi chương trình C++ có ít nhất một hàm là hàm main()

Tiếp theo, chúng ta đã nắm được các thành phần của một chương trình là gì. Bây giờ, bạn hãy nhìn vào chương trình "Hello PNU CS211 Class" mà bạn đã xây dựng trong bài trước:

#include <iostream>
using namespace std;

int main()
{
cout << "Hello PNU CS211 Class" << endl;
system("pause");
return 0;
}

Trong đoạn code trên:


  • Dòng 1: Đây gọi là một chỉ thị tiền xử lý, là một dạng câu lệnh đặc biệt. Dòng này yêu cầu compiler bổ sung thêm nội dung của iostream header vào chương trình. iostream header sẽ cho phép bạn truy cập vào các function trong iostream library.
  • Dòng 2: Dòng này cho biết chương trình của bạn sẽ sử dụng namespace std (là một standard namespace được định nghĩa sẵn một lượng lớn các class, object, function thường được sử dụng) là namespace mặc định. Khi tham chiếu đến các class, object, function trong namespace std thì không cần tiền tố std::. Exp: Nếu không khai báo namspace std, thì dòng số 6 bạn phải viết là cout << "Hello PNU CS211 Class" << endl;
  • Dòng 3: Compiler sẽ bỏ qua dòng trống.
  • Dòng 4: Đây là khai báo main() function, mỗi chương trình C++ phải có một hàm main(). Khi chương trình C++ được chạy, hàm main() sẽ được gọi đầu tiên, và những dòng code trong hàm main() sẽ được thực thi từ trên xuống dưới.
  • Dòng 5, 8: Mọi dòng code thuộc một hàm phải nằm trong phạm vi dấu {} của hàm đó.
  • Dòng 6: Là một câu lệnh, nó dùng để hiển thị câu “Hello PNU CS211 Class” ra màn hình. Cout là một đối tượng thuộc thư viện iostream, << là một output operator. Mọi thông điệp gửi đến cout thông qua toán tử << sẽ được hiển thị lên màn hình. Câu lệnh kết thúc bởi dấu “;”.
  • Dòng 7: là một câu lệnh return. Hàm main() có kiểu int nên bắt buộc phải có một câu lệnh return giá trị kiểu int. Khi chương trình thực thi kết thúc, hàm main() sẽ return một giá trị cho hệ điều hành, dù nó chạy thành công hay không.
    • Nếu giá trị trả về là 0, nghĩa là mọi thứ đã chạy thành công.
    • Nếu giá trị trả về khác 0, nghĩa là đã có gì đó đã chạy sai và chương trình đã dừng lại.
2.2. Cú pháp và lỗi cú pháp trong C++ (Syntax and syntax errors)

Cú pháp trong C++ là những quy tắc viết code khi xây dựng một chương trình. Khi bạn compile một chương trình, compiler sẽ đảm bảo chương trình của bạn đã đúng cú pháp ngôn ngữ C++ hay chưa. Nếu bạn vi phạm một quy tắc, dù nhỏ hay lớn thì compiler cũng sẽ thông báo cho bạn thông tin về lỗi đó, và bạn bắt buộc phải sửa nó.

  • Ví dụ: Trong hình bên dưới, bạn thử bỏ đi một dấu “;” sau dòng return 0. Compiler sẽ thông báo cho bạn về thông tin lỗi (mô tả lỗi, ở project nào lỗi, file nào lỗi, dòng nào lỗi) ở cửa sổ Error list. Từ đó bạn có thể dễ dàng fix nó.

Bài tập

a. Viết chương trình C++ để in các dòng sau:

Toi moi 10 tuoi.
Toi con qua tre de choi game.

#include <iostream>
using namespace std;

int main()
{
cout << " Toi moi 10 tuoi.\n";
cout << " Toi con qua tre de choi game.\n";
system("pause");
return 0;
}

b. Viết chương trình in các dấu * theo yêu cầu dưới đây:

*****

*****

*****

*****

***** 

#include <iostream>
using namespace std;

int main()
{
cout << "*****\n";
cout << "*****\n";
cout << "*****\n";
cout << "*****\n";
cout << "*****\n";
system("PAUSE");
return 0;
}

Không có nhận xét nào:

Đăng nhận xét

Bài tập chuỗi trong C++

  Bài tập chuỗi trong C++   (7) 668 lượt xem Chuỗi (String) trong C/C++ là một mảng ký tự được kết thúc bởi \0 (ký tự null). Dưới đây là các...