Bài 4 - Phần 1: Kiểu Dữ Liệu, Hằng, Biến và Chương Trình Con trong C++
1. Một Số Kiểu Dữ Liệu Cơ Bản Thường Dùng Trong C++
TT | Kiểu Dữ Liệu | Mô Tả | Ghi Chú |
---|---|---|---|
1 | int, long | -2147483648 tới 2147483647 | Số nguyên |
2 | unsigned int, long | 0 tới 4,294,967,295 | Số nguyên |
3 | short | -32768 tới 32767 | Số nguyên |
4 | unsigned short | 0 tới 65,535 | Số nguyên |
5 | long long | -9,223,372,036,854,775,808 đến 9,223,372,036,854,775,807 | Số nguyên |
6 | unsigned long long | 0 đến 18,446,744,073,709,551,615 | Số nguyên |
7 | float | Số thực | |
8 | double | Số thực | |
9 | long double | Số thực | |
10 | char | -127 tới 127 | Kí tự |
11 | unsigned char | 0 tới 255 | Kí tự |
12 | string | 255 kí tự, chỉ số từ 0 | Xâu kí tự |
13 | bool | true hoặc false | Logic |
14 | void | Kiểu không có giá trị |
Giải Thích Phạm Vi Của Kiểu Dữ Liệu
Một bit trong lập trình biểu diễn được 2 giá trị: 0 hoặc 1, tức là biểu diễn được 2^1 giá trị. Vậy 2 bits sẽ biểu diễn được 4 giá trị: 00, 01, 10 và 11, tức là biểu diễn được 2^2 giá trị. Như vậy, 1 byte = 8 bits sẽ biểu diễn được 2^8 giá trị khác nhau.
Máy tính lưu trữ giá trị dưới dạng nhị phân. Do đó, giá trị lớn nhất mà 1 byte có thể biểu diễn là 11111111 = 255. Kiểu unsigned char
có phạm vi giá trị từ 0 đến 255, trong khi kiểu char
có miền âm, dẫn đến phạm vi -128 đến 127.
2. Cách Khai Báo và Sử Dụng Biến Hằng, Phép Gán
-
Phép Gán: Dùng dấu
=
. -
Hằng (constant): Là đại lượng có giá trị không thay đổi. Từ khóa khai báo hằng:
const
.- Cú pháp:
const kiểu dữ liệu tên_hằng = giá trị;
- Ví dụ:
const double PI = 3.14159;
- Cú pháp:
-
Biến (variable): Là đại lượng có giá trị thay đổi.
- Cú pháp:
kiểu dữ liệu tên_biến = giá trị;
- Ví dụ:
int a = 0, b = 20; // Khai báo 2 biến kiểu số nguyên float c = 20.8; char d = 'A'; string s = "Thông báo";
- Cú pháp:
3. Ép Kiểu
Ép kiểu trong C++ là việc gán giá trị từ một biến có kiểu dữ liệu này sang biến có kiểu dữ liệu khác. Ví dụ: Ép từ kiểu nguyên sang kiểu thực: (float) 9/4
.
4. Nhập, Xuất Dữ Liệu
4.1. Nhập Từ Bàn Phím và Xuất Ra Màn Hình
- Nhập Dữ Liệu: Sử dụng lệnh
cin >>
.- Ví dụ:
cin >> a;
- Ví dụ:
4.2. Đọc, Ghi Tệp
- Sử dụng thư viện:
#include <fstream>
.
Kiểu Dữ Liệu | Miêu Tả |
---|---|
ofstream | Kiểu dữ liệu này biểu diễn Output File Stream. |
ifstream | Kiểu dữ liệu này biểu diễn Input File Stream. |
fstream | Có khả năng cả của ofstream và ifstream . |
- Chế Độ:
ios::in
: Mở một file để đọc.ios::out
: Mở một file để ghi.ios::app
: Chế độ Append.ios::ate
: Mở file cho output và di chuyển tới cuối file.ios::trunc
: Cắt nội dung file nếu đã tồn tại.
Ví dụ Hoàn Chỉnh Đọc và Ghi Tệp:
cpp
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
ofstream outFile("Data.txt",ios::out);
if(!outFile)
{
cout<<"Không mở được tập tin";
}
else
{
string Ten;
int age;
cout<<"Nhập vào tên của bạn: ";
getline(cin,Ten);
outFile<<Ten<<endl;
cout<<"Nhập vào tuổi bạn: ";
cin>>age;
outFile<<age;
cout<<"Đã ghi tập tin thành công"<<endl;
outFile.close();
}
ifstream inFile("Data.txt",ios::in);
if(!inFile)
{
cout<<"Không mở được tập tin"<<endl;
}
else
{
cout<<"Nội dung đọc được là:";
string Ten;
int age;
getline(inFile,Ten);
inFile>>age;
cout<<"Tên của bạn: "<<Ten<<endl;
cout<<"Tuổi của bạn: "<<age;
inFile.close();
}
}
5. Chương Trình Con - Hàm
Chương trình con (hàm) là nhóm lệnh thực hiện một công việc cụ thể, có thể phân thành hai loại:
- Hàm có kiểu trả lại: Trả về dữ liệu thuộc kiểu của hàm.
- Hàm không có kiểu trả lại: Còn gọi là hàm trả lại kiểu void.
Định Nghĩa Hàm:
Cú Pháp:
cpp
kiểu_dữ_liệu_trả_lại Tên_hàm(các_tham_số);
{
nội_dung_của_hàm;
return kiểu_dữ_liệu_trả_lại; // không có chuỗi này nếu hàm không có kiểu trả lại
}
Ví Dụ Hàm Có Kiểu Trả Lại:
cpp
int Tong(int a, int b)
{
return a + b;
}
Ví Dụ Hàm Không Có Kiểu Trả Lại:
cpp
void Xuat(int a, int b)
{
cout << "Tổng của " << a << " và " << b << " là: " << Tong(a,b);
}
Chương Trình** Hoàn Chỉnh:**
cpp
#include <iostream>
using namespace std;
int Tong(int a, int b)
{
return a + b;
}
void Xuat(int a, int b)
{
cout << "Tổng của " << a << " và " << b << " là: " << Tong(a,b);
}
int main()
{
Xuat(8, 9);
return 0;
}
Kết quả chương trình sẽ hiển thị tổng hai số nguyên đã nhập.
source: viblo