Biến Phải khai báo biến trước khi sử dụng Có thể khai báo biến ở mọi nới trong chương trình... Thao tác vào/ra chuẩn Sử dụng đối tượng stream để thực hiện các thao tác input/output
Trang 1CHƯƠNG 2: NHỮNG VẤN ĐỀ
CƠ BẢN TRONG C++
Trang 2• Câu lệnh: kết thúc bởi dấu “;”
• Câu chú thích: Câu chú thích bắt đầu bằng dấu // hoặc nằm trong /* */
http://www.uniqueness-template.com/devcpp/
Trang 32 Biến
Phải khai báo biến trước khi sử dụng
Có thể khai báo biến ở mọi nới trong chương trình
Trang 4Kiểu dữ liệu đơn giản
Kiểu nguyên: int , long , short
Kiểu ký tự: char – lưu mã ASCII của ký tự
Ký tự nằm trong dấu ‘’ Ví dụ: ‘a’
Ký tự đặc biệt: \n, \tab, \\, \’, \”, …
Kiểu không dấu: unsigned char , unsigned int ,
unsigned short, unsigned long
Kiểu dấu phẩy động: float , double , long
double
Kiểu bool : có giá trị True/False
Trang 5Kiểu dữ liệu đơn giản …
Trang 6Kiểu string
string không phải là kiểu cơ bản trong C++
string được định nghĩa trong lớp chuẩn string
mystring = "This is the initial string content";
cout << mystring << endl;
mystring = "This is a different string content";
cout << mystring << endl;
Trang 7Biến hằng (Constant Variables)
Giá trị của hằng không thay đổi.
Có 2 cách khai báo hằng:
const float PI=3.14;
#define PI 3.14
Định nghĩa ở đầu chương trình
Không xác định kiểu của PI
Trang 83 Toán tử
Toán tử toán học
Toán tử quan hệ
Toán tử logic
Trang 11Toán tử logic
logical and : &&
(x >= 5) && ( x <= 15) // true nếu x nằm trong [5,15]
Toán tử điều kiện (conditional operator) : ? … :
<condition> ? <true expression> : < false expression>
Trang 124 Thao tác vào/ra chuẩn
Sử dụng đối tượng stream để thực hiện các thao tác input/output
Được khai báo trong header file
iostream
Trang 13Sử dụng cout
string str=”Hello world”;
int i=8;
cout << str << endl; // endl (hoặc \n) là dấu hiệu xuống dòng
cout << ”i=” << i << endl;
cout<< setw(12) << str << setw(5) << i;
Kết quả: Hello world 8
Trang 14Sử dụng cin
cin là toán tử được định nghĩa trước trong C++, tương ứng với luồng vào chuẩn ( standard input stream ).
Toán tử >> đưa nội dung từ luồng vào chuẩn vào biến.
Trang 15cin và string
cin>>mystring
cin dừng khi nhập dấu cách
#include <iostream>
#include <string>
using namespace std;
int main () {
string mystr;
cout << "What's your name? ";
getline (cin, mystr);
cout << "Hello " << mystr << ".\n"; cout << "What is your favorite team? "; getline (cin, mystr);
cout << "I like " << mystr << " too!\n"; return 0;
}
Trang 16Header File và Library File
Một số nhiệm vụ được thực hiện bởi Library Function.
Header File chứa khai báo các hàm mà ta cần sử
dụng trong chương trình.
Ví dụ:
#include <math.h>
#include ”myprog.h”
Nếu không include Header File thích hợp thì chương trình dịch sẽ báo lỗi.
Trang 17executable file
Trang 185 Các câu lệnh
Vòng lặp
Rẽ nhánh
Một số lệnh điều khiển khác
Trang 19Vòng lặp for
increment expression test expression
initialization expression
for ( i=0; i<15; i++ )
initialization expression
Trang 21Vòng lặp while
•Vòng lặp while được sử dụng khi không biết trước số lần lặp.
•Lặp cho đến khi biểu thức kiểm tra vẫn có giá trị True.
•Ví dụ:
char c=’n’;
while ( c != ’y’){
cout << ”Do you want to continue: (y/n)” << endl;cin >> c;
}
Trang 23cout << ”Do you want to continue: (y/n)” << endl;
cin >> c;
}while ( c != ’y’);
Trang 26false
body of else
Trang 30Một số lệnh điều khiển khác
break: thoát khỏi vòng lặp hoặc switch
continue: trở lại đầu vòng lặp.
goto: nhảy tới một nhãn xác định
Trang 316 Kiểu dữ liệu cấu trúc
Structure là một tập hợp các biến đơn giản, tương tự như record trong Pascal.
Khai báo Structure:
Trang 32float inches; Distance width;
Trang 337 Kiểu liệt kê (Enumeration)
Định nghĩa enum:
enum days_of_week {Sun, Mon, Tue, Wed, Thu, Fri, Sat};
Khai báo biến kiểu enum
days_of_enum day1, day2;
định nghĩa trước.
Các giá trị của enum được lưu dưới dạng số nguyên, bắt đầu từ 0.
enum days_of_week {Sun=1, Mon, Tue, Wed, Thu, Fri, Sat};
days_of_enum day=Mon;
cout << day; // Hiển thị 2
Trang 348 Hàm
Khai báo hàm xác định tên hàm, kiểu trả về, và các tham số cần thiết trong lời gọi hàm.
Khai báo hàm thường nằm trong Header File (.h)
Định nghĩa hàm chứa thân hàm.
Định nghĩa hàm thường nằm trong source file (.cpp)
Ví dụ
int fac(int); // function declaration
int fac(int n) // function definition
Trang 35Truyền trị (Passing by Value)
Khi truyền trị, hàm sẽ tạo ra một biến cục bộ
để lưu giá trị của biến được truyền
Giá trị của biến được truyền không thay đổi.
Trang 36Truyền tham chiếu (Passing by Reference)
danh của biến được truyền.
Trang 42Phạm vi của biến
Một khối lệnh (block) nằm trong dấu { … }
Phạm vi của biến là khối lệnh mà biến được khai báo
Biến được khai báo ở ngoài hàm là biến toàn cục (global variable), ở trong hàm là biến cục
bộ (local variable).