Bài giảng Tin học đại cương Phần 2: Bài 1 - Nguyễn Hữu Nam Dương
lượt xem 2
download
Mời các bạn cùng tìm hiểu lịch sử phát triển ngôn ngữ lập trình C; các phần tử cơ bản của ngôn ngữ C; cấu trúc cơ bản của một chương trình C; biên dịch chương trình viết bằng C;... được trình bày cụ thể trong "Bài giảng Tin học đại cương Phần 2: Bài 1 - Tổng quan về C".
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Tin học đại cương Phần 2: Bài 1 - Nguyễn Hữu Nam Dương
- VIỆN CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG SOICT TIN HỌC ĐẠI CƯƠNG PHẦN 2: LẬP TRÌNH BẰNG NGÔN NGỮ C BÀI 1: TỔNG QUAN VỀ NGÔN NGỮ C 1 Bài 1:Tổng quan về C 1.1. Lịch sử phát triển ngôn ngữ lập trình C 1.2. Các phần tử cơ bản của ngôn ngữ C 1.3. Cấu trúc cơ bản của một chương trình C 1.4. Biên dịch chương trình viết bằng C 1.5. Bài tập 2 1
- Bài 1:Tổng quan về C 1.1. Lịch sử phát triển ngôn ngữ lập trình C 1.2. Các phần tử cơ bản của ngôn ngữ C 1.3. Cấu trúc cơ bản của một chương trình C 1.4. Biên dịch chương trình viết bằng C 1.5. Bài tập 3 1.1. Lịch sử ngôn ngữ lt C Ra đời tại phòng thí nghiệm BELL của tập đoàn AT&T (Hoa Kỳ) Do Brian W. Kernighan và Dennis Ritchie phát triển Phát triển từ 1970 1970,, ra đời 1972. 1972. 4 2
- 1.1. Lịch sử ngôn ngữ lt C (tiếp tiếp)) C dựa trên nền các ngôn ngữ BCPL (Basic Combined Programming Language) Language) và ngôn ngữ B Tên là ngôn ngữ C như là sự tiếp nối ngôn ngữ B 1978: C được giới thiệu trong phiên đầu của cuốn sách "The "The C programming language"" language 5 1.1. Lịch sử ngôn ngữ lt C (tiếp) Bổ sung thêm những tính năng và khả năng mới vào trong ngôn ngữ C Đồng thời tồn tại nhiều phiên bản =>Đồng => nhưng không tương thích nhau nhau.. Năm 1989, Viện tiêu chuẩn quốc gia =>Năm => của Hoa Kỳ (American (American National Standards Institute - ANSI) đã công bố phiên bản chuẩn hóa của ngôn ngữ C: C: ANSI C hay C chuẩn hay C89 6 3
- 1.1. Lịch sử ngôn ngữ lt C (tiếp) Tất cả các phiên bản của ngôn ngữ C hiện nay đều tuân theo các mô tả đã được nêu ra trong ANSI C, sự khác biệt nếu có thì chủ yếu ở các thư viện bổ sung Hiện nay cũng có nhiều phiên bản của ngôn ngữ nhau, gắn liền với một bộ chương trình C khác nhau, dịch cụ thể của ngôn ngữ C:C: Turbo C++ và Borland C++ của Borland Inc. và VC của Microsoft Corp. MSC và GCC của GNU project. 7 1.2. Các phần tử cơ bản của ngôn ngữ C Tập kí tự : Chương trình nguồn được tạo nên từ các phần tử cơ bản là tập kí tự . Các kí tự tổ hợp với nhau tạo thành các từ Các từ liên kết với nhau theo một quy tắc xác định để tạo thành các câu lệnh Từ các câu lệnh => tổ chức nên chương trình. 8 4
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Tập ký tự (tiếp): 9 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Từ khóa: khóa:(Keyword Keyword)) là những từ có sẵn của ngôn ngữ và được sử dụng dành riêng cho những mục đích xác định. Các từ khóa trong C được sử dụng để Đặt tên cho các kiểu dữ liệu: liệu: int int,, float float,, double,, char double char,, struct struct,, union union… … Mô tả các lệnh, các cấu trúc điều khiển: for for,, do,, while do while,, switch switch,, case case,, if if,, else else,, break break,, continue… continue … 10 5
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) 11 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Định danh/Tên: danh/Tên: (Identifier – hoặc còn gọi là Tên Tên)) là một dãy các kí tự dùng để gọi tên các đối tượng trong chương trình. Các đối tượng trong chương trình gồm có biến, hằng, hàm, kiểu dữ liệu… 12 6
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Định danh có thể được đặt tên: tên: Bởi ngôn ngữ lập trình (đó chính là các từ khóa) Hoặc do người lập trình đặt. Khi đặt tên cho định danh trong C, người lập trình cần tuân thủ các quy tắc sau : 13 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Qui tắc đặt tên cho định danh: Chỉ được gồm có: chữ cái, cái, chữ số và dấu gạch dưới “_“_” (underscore (underscore). ). Bắt đầu của định danh phải là chữ cái hoặc dấu gạch dưới, không được bắt đầu định danh bằng chữ số. Định danh do người lập trình đặt không được trùng với từ khóa. 14 7
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Một số ví dụ về định danh: i, x, y, a, b, _function, _MY_CONSTANT, PI, gia_tri_1 Ví dụ về định danh không hợp lệ: 15 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Một thói quen của những người lập trình trình:: Hằng số số:: chữ hoa hoa,, Các biến biến,, hàm hay cấu trúc trúc:: bằng chữ thường.. thường Nếu tên gồm nhiều từ thì ta nên phân cách các từ bằng dấu gạch dưới dưới.. Ví dụ dụ:: 16 8
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Các kiểu dữ liệu :được :được định nghĩa gồm 2 điểm như sau: Một kiểu dữ liệu là một tập hợp các giá trị mà một dữ liệu thuộc kiểu dữ liệu đó có thể nhận được. Trên một kiểu dữ liệu ta xác định một số phép toán đối với các dữ liệu thuộc kiểu dữ liệu đó. 17 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Kiểu dữ liệu (tiếp): Ví dụ: dụ: Trong ngôn ngữ C có kiểu dữ liệu int.. Một dữ liệu thuộc kiểu dữ liệu int thì: int Là một số nguyên (integer (integer)) (=- 2 15) đến Có thể nhận giá trị từ - 32768 (=- 32767 (=2 15 - 1) . Trên kiểu dữ liệu int ngôn ngữ C định nghĩa các phép toán số học đối với số nguyên như sau: 18 9
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Đảo dấu: - Cộng: + Trừ: - Nhân: * Chia lấy phần nguyên: / Chia lấy phần dư: % So sánh bằng: == So sánh lớn hơn: > So sánh nhỏ hơn: < 19 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Hằng /đại lượng bất biến (constant ): là đại constant): lượng có giá trị không đổi trong chương trình.. trình Biểu diễn hằng số nguyên nguyên:: Dưới dạng thập phân phân:: 1234 1234,, 2312 2312,,… Dưới dạng thập lục phân phân:: 0x7D7 Dưới dạng bát phân phân:: 0614 20 10
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Biểu diễn hằng số thực thực:: Có 2 cách Dưới dạng số thực dấu phẩy tĩnh Ví dụ dụ:: 3.14159 , 123.456 Dưới dạng số thực dấu phẩy động : Ví dụ dụ:: 31.4159 E-E-1 = 31.4159 * 10-1 12.3456 E+1 = 1.23456 E+2 = 1.23456 * 102 =123.456 21 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Biểu diễn hằng kí tự : 2 cách cách:: Bằng kí hiệu của kí tự đó đặt giữa 2 dấu nháy đơn.. ‘ ‘ đơn Bằng số thứ tự của kí tự đó trong bảng mã (và lưu ý số thứ tự của một kí tự trong ASCII (và bảng mã ASCII là một số nguyên nên có một số cách biểu diễn diễn). ). 22 11
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Ví dụ biểu diễn hằng ký tự: 23 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Biểu diễn hằng là xâu kí tự tự:: Một hằng là xâu kí tự được biểu diễn bởi dãy các kí tự thành phần có trong xâu đó và được đặt trong cặp dấu nháy kép kép.. “ ” VD: “Chao cac ban” 24 12
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Biến (variable) : Là đại lượng mà giá trị có thể thay đổi trong chương trình. Hằng và biến: được sử dụng để lưu trữ dữ liệu, và phải thuộc một kiểu dữ liệu nào đó. Tên biến và hằng được đặt theo quy tắc đặt tên cho định danh. 25 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Hàm : Ngôn ngữ C cung cấp cho người lập trình một công cụ dùng để tính toán giá trị các đại lượng đó mỗi khi cần trong chương trình, đó là các hàm. VD: Sin (x), Cos (x),… 26 13
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) 27 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) 28 14
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Câu lệnh: lệnh: statement)) diễn tả một hoặc một nhóm (statement các thao tác trong giải thuật. Chương trình được tạo thành từ dãy các câu lệnh. Cuối mỗi câu lệnh đều có dấu chấm phẩy ‘;’ để đánh dấu kết thúc câu lệnh 29 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Câu lệnh (tiếp) Câu lệnh được chia thành 2 nhóm chính: Nhóm các câu lệnh đơn: không chứa câu lệnh khác. Ví dụ: phép gán, phép cộng, phép trừ… Nhóm các câu lệnh phức: chứa câu lệnh khác trong nó. Ví dụ: lệnh khối, các cấu trúc lệnh rẽ nhánh, cấu trúc lệnh lặp… Lệnh khối là một số các lệnh đơn được nhóm lại với nhau và đặt trong cặp dấu ngoặc nhọn { } 30 15
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Chú thích: Lời chú thích là lời mô tả, giải thích vắn tắt cho một câu lệnh, một đoạn chương trình hoặc cả chương trình Lời chú thích chỉ có tác dụng duy nhất là giúp chương trình viết ra dễ đọc và dễ hiểu hơn Trình biên dịch sẽ tự động bỏ qua không dịch phần nội dung nằm trong phạm vi của vùng chú thích đó. 31 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Chú thích (tiếp) Trong C, có 2 cách để viết lời chú thích Cách 1: Dùng 2 dấu sổ chéo liên tiếp // để kí hiệu toàn bộ vùng bắt đầu từ 2 dấu sổ chéo liên tiếp đó đến cuối dòng là vùng chú thích. Ví dụ: a = 5; b = 3; // khoi tao gia tri cho cac bien nay Cách này thường dùng nếu đoạn chú thích ngắn, có thể viết đủ trên một dòng. 32 16
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Chú thích (tiếp) Cách 2:Dùng 2 cặp kí hiệu /* và */ để kí hiệu rằng toàn bộ vùng bắt đầu từ cặp kí hiệu /* kéo dài đến cặp kí hiệu */ là vùng chú thích. Ví dụ: /* doan chuong trinh sau khai bao 2 bien nguyen va khoi tao gia tri cho 2 bien nguyen nay */ int a, b; a = 5; b = 3; 33 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Cấu trúc cơ bản của một chương trình C: Gồm 6 phần có thứ tự như sau sau:: Phần1: Khai báo tệp tiêu đề đề:: #include Phần 2: Định nghĩa kiểu dữ liệu liệu:: typedef ... Phần 3: Khai báo các hàm nguyên mẫu Phần 4: Khai báo các biến toàn cục Phần 5: Nội dung hàm main() Phần 6: Nội dung các hàm đã khai báo 34 17
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Cấu trúc cơ bản của 1 chương trình C(tiếp) Phần 1: Thông báo cho chương trình dịch biết là chương trình có sử dụng những thư viện nào VD: #include // thao tác vào ra #include // hàm của DOS 35 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Phần 2: Định nghĩa các kiểu dữ liệu mới (nếu cần) dùng cho cả chương trình Phần 3: Khai Khai báo các hàm nguyên mẫu. Phần này giúp cho chương trình dịch biết được những thông tin cơ bản của các hàm sử dụng trong chương trình. 36 18
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Phần 4: Phần khai báo các biến toàn cục Phần 5: Nội dung hàm main( ).). Khi thực hiện, chương trình sẽ bắt đầu bằng việc thực hiện các lệnh trong hàm main( ). ). Trong hàm main( ) :Có thể có lệnh gọi tới các hàm khác Phần 6: Nội dung của các hàm đã khai báo 37 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) Dưới đây là ví dụ một chương trình viết trên ngôn ngữ C. // Chuong trinh sau se nhap vao tu ban phim 2 so nguyen // va hien thi ra man hinh tong, hieu tich cua 2 so nguyen vua nhap vao #include #include void main() { 38 19
- 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) // khai bao cac bien trong chuong trinh int a, b; int tong, hieu, tich; // Nhap vao tu ban phim 2 so nguyen printf(“\\n Nhap vao so nguyen thu nhat: “); printf(“ scanf(“%d”,&a); printf(“\\n Nhap vao so nguyen thu hai: “); printf(“ scanf(“%d”,&b); 39 1.2. Các phần tử cơ bản của ngôn ngữ C (tiếp) // Tinh tong, hieu, tich cua 2 so vua nhap tong = a+b; hieu = a – b; tich = a*b; 40 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng tin học đại cương - trường ĐH Tôn Đức Thắng
175 p | 1028 | 287
-
Bài giảng Tin học đại cương - Chương 1: Các vấn đề cơ bản về CNTT
167 p | 432 | 31
-
Bài giảng Tin học đại cương: Chương 1 - Học viện ngân hàng
7 p | 389 | 24
-
Bài giảng Tin học đại cương - GV. Huỳnh Thị Thu Thủy
62 p | 172 | 24
-
Bài giảng Tin học đại cương: Bài 1 - ĐH Bách khoa Hà Nội
33 p | 269 | 21
-
Bài giảng Tin học đại cương: Bài 2 - ĐH Bách khoa Hà Nội
42 p | 161 | 18
-
Bài giảng Tin học đại cương: Bài 5 - ĐH Bách khoa Hà Nội
7 p | 135 | 13
-
Bài giảng Tin học đại cương: Bài 4 - ĐH Bách khoa Hà Nội
8 p | 157 | 13
-
Bài giảng Tin học đại cương: Bài 9 - ĐH Bách khoa Hà Nội
16 p | 130 | 11
-
Bài giảng Tin học đại cương: Bài 6 - ĐH Bách khoa Hà Nội
13 p | 138 | 10
-
Bài giảng Tin học đại cương: Bài 3 - ĐH Bách khoa Hà Nội
14 p | 148 | 8
-
Bài giảng Tin học đại cương: Bài 8 - ĐH Bách khoa Hà Nội
10 p | 113 | 8
-
Bài giảng Tin học đại cương: Bài 10 - ĐH Bách khoa Hà Nội
7 p | 108 | 7
-
Bài giảng Tin học đại cương: Bài 7 - ĐH Bách khoa Hà Nội
18 p | 120 | 7
-
Bài giảng Tin học đại cương: Bài 11 - ĐH Bách khoa Hà Nội
8 p | 101 | 6
-
Bài giảng Tin học đại cương: Chương 1 - Thông tin
29 p | 151 | 5
-
Bài giảng Tin học đại cương: Chương 1 - Đại cương về tin học
16 p | 125 | 5
-
Bài giảng Tin học đại cương: Bài 1 - Phạm Xuân Cường
25 p | 44 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn