Bài giảng Tin học đại cương Phần 2: Bài 1 - Nguyễn Hữu Nam Dương

24 70 0
Bài giảng Tin học đại cương Phần 2: Bài 1 - Nguyễn Hữu Nam Dương

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

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.

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 Bài 1:Tổng quan 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ử ngôn ngữ C 1.3 Cấu trúc chương trình C 1.4 Biên dịch chương trình viết C 1.5 Bài tập Bài 1:Tổng quan 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ử ngôn ngữ C 1.3 Cấu trúc chương trình C 1.4 Biên dịch chương trình viết C 1.5 Bài tập 1.1 Lịch sử ngôn ngữ lt C Ra đời phịng thí nghiệm BELL tập đoàn AT&T (Hoa Kỳ) Do Brian W Kernighan Dennis Ritchie phát triển Phát triển từ 1970 1970,, đời 1972 1972 1.1 Lịch sử ngôn ngữ lt C (tiếp tiếp)) C dựa ngôn ngữ BCPL (Basic Combined Programming Language) Language) ngôn ngữ B Tên ngôn ngữ C tiếp nối ngôn ngữ B 1978: C giới thiệu phiên đầu sách "The "The C programming language"" language 1.1 Lịch sử ngôn ngữ lt C (tiếp) Bổ sung thêm tính khả vào ngôn ngữ C =>Đồng => Đồng thời tồn nhiều phiên khơng tương thích nhau =>Năm => Năm 1989, Viện tiêu chuẩn quốc gia Hoa Kỳ (American (American National Standards Institute - ANSI) cơng bố phiên chuẩn hóa ngơn ngữ C: C: ANSI C hay C chuẩn hay C89 1.1 Lịch sử ngôn ngữ lt C (tiếp) Tất phiên ngôn ngữ C tuân theo mô tả nêu ANSI C, khác biệt có chủ yếu thư viện bổ sung Hiện có nhiều phiên ngôn ngữ C khác nhau, nhau, gắn liền với chương trình dịch cụ thể ngôn ngữ C: C:    Turbo C++ Borland C++ Borland Inc MSC và VC Microsoft Corp GCC GNU project 1.2 Các phần tử ngơn ngữ C Tập kí tự :     Chương trình nguồn tạo nên từ phần tử tập kí tự Các kí tự tổ hợp với tạo thành từ Các từ liên kết với theo quy tắc xác định để tạo thành câu lệnh Từ câu lệnh => tổ chức nên chương trình 1.2 Các phần tử ngôn ngữ C (tiếp) Tập ký tự (tiếp): 1.2 Các phần tử ngôn ngữ C (tiếp) Từ khóa: khóa:(Keyword Keyword)) từ có sẵn ngôn ngữ sử dụng dành riêng cho mục đích xác định Các từ khóa C sử dụng để   Đặt tên cho kiểu liệu: liệu: int int,, float float,, double,, char double char,, struct struct,, union union… … Mô tả lệnh, cấu trúc điều khiển: for for,, do,, while while,, switch switch,, case case,, if if,, else else,, break break,, continue… continue … 10 1.2 Các phần tử ngôn ngữ C (tiếp) 11 1.2 Các phần tử ngôn ngữ C (tiếp) Định danh/Tên: danh/Tên: (Identifier – gọi Tên Tên)) dãy kí tự dùng để gọi tên đối tượng chương trình Các đối tượng chương trình gồm có biến, hằng, hàm, kiểu liệu… 12 1.2 Các phần tử ngơn ngữ C (tiếp) Định danh đặt tên: tên:   Bởi ngơn ngữ lập trình (đó từ khóa) Hoặc người lập trình đặt Khi đặt tên cho định danh C, người lập trình cần tuân thủ quy tắc sau : 13 1.2 Các phần tử ngôn ngữ C (tiếp) Qui tắc đặt tên cho định danh:  Chỉ gồm có: chữ cái, cái, chữ số dấu gạch “_ “_” (underscore (underscore) )  Bắt đầu định danh phải chữ dấu gạch dưới, không bắt đầu định danh chữ số  Định danh người lập trình đặt khơng trùng với từ khóa 14 1.2 Các phần tử ngôn ngữ C (tiếp) Một số ví dụ định danh: i, x, y, a, b, _function, _MY_CONSTANT, PI, gia_tri_1 Ví dụ định danh khơng hợp lệ: 15 1.2 Các phần tử ngơn ngữ C (tiếp) Một thói quen 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:: chữ thường thường Nếu tên gồm nhiều từ ta nên phân cách từ dấu gạch dưới Ví dụ dụ:: 16 1.2 Các phần tử ngôn ngữ C (tiếp) Các kiểu liệu :được :được định nghĩa gồm điểm sau:   Một kiểu liệu tập hợp giá trị mà liệu thuộc kiểu liệu nhận Trên kiểu liệu ta xác định số phép toán liệu thuộc kiểu liệu 17 1.2 Các phần tử ngôn ngữ C (tiếp) Kiểu liệu (tiếp): Ví dụ: dụ: Trong ngơn ngữ C có kiểu liệu int Một liệu thuộc kiểu liệu int thì: int    Là số nguyên (integer (integer)) Có thể nhận giá trị từ - 32768 (=(=- 15) đến 32767 (=2 15 - 1) Trên kiểu liệu int ngôn ngữ C định nghĩa phép toán số học số nguyên sau: 18 1.2 Các phần tử 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ử ngôn ngữ C (tiếp) Hằng /đại lượng bất biến (constant constant): ): đại lượng có giá trị khơng đổi chương trình trình Biểu diễn 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ử ngôn ngữ C (tiếp) Biểu diễn số thực thực:: Có 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 EE-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ử ngôn ngữ C (tiếp) Biểu diễn kí tự : cách cách::   Bằng kí hiệu kí tự đặt dấu nháy đơn ‘ ‘ đơn Bằng số thứ tự kí tự bảng mã ASCII (và (và lưu ý số thứ tự kí tự bảng mã ASCII số nguyên nên có số cách biểu diễn diễn) ) 22 11 1.2 Các phần tử ngơn ngữ C (tiếp) Ví dụ biểu diễn ký tự: 23 1.2 Các phần tử ngôn ngữ C (tiếp) Biểu diễn xâu kí tự tự:: Một xâu kí tự biểu diễn dãy kí tự thành phần có xâu đặt cặp dấu nháy kép kép “ ” VD: “Chao cac ban” 24 12 1.2 Các phần tử ngôn ngữ C (tiếp) Biến (variable) : Là đại lượng mà giá trị thay đổi chương trình Hằng biến: sử dụng để lưu trữ liệu, phải thuộc kiểu liệu Tên biến đặt theo quy tắc đặt tên cho định danh 25 1.2 Các phần tử ngôn ngữ C (tiếp) Hàm : Ngôn ngữ C cung cấp cho người lập trình cơng cụ dùng để tính tốn giá trị đại lượng cần chương trình, hàm VD: Sin (x), Cos (x),… 26 13 1.2 Các phần tử ngôn ngữ C (tiếp) 27 1.2 Các phần tử ngôn ngữ C (tiếp) 28 14 1.2 Các phần tử ngôn ngữ C (tiếp) Câu lệnh: lệnh: (statement statement)) diễn tả một nhóm thao tác giải thuật Chương trình tạo thành từ dãy câu lệnh Cuối câu lệnh 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ử ngôn ngữ C (tiếp) Câu lệnh (tiếp) Câu lệnh chia thành nhóm chính:   Nhóm 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âu lệnh phức: chứa câu lệnh khác Ví dụ: lệnh khối, cấu trúc lệnh rẽ nhánh, cấu trúc lệnh lặp… Lệnh khối số lệnh đơn nhóm lại với đặt cặp dấu ngoặc nhọn { } 30 15 1.2 Các phần tử ngơn ngữ C (tiếp) Chú thích:    Lời thích lời mơ tả, giải thích vắn tắt cho câu lệnh, đoạn chương trình chương trình Lời thích có tác dụng giúp chương trình viết dễ đọc dễ hiểu Trình biên dịch tự động bỏ qua không dịch phần nội dung nằm phạm vi vùng thích 31 1.2 Các phần tử ngôn ngữ C (tiếp) Chú thích (tiếp) Trong C, có cách để viết lời thích Cách 1: Dùng dấu sổ chéo liên tiếp // để kí hiệu tồn vùng dấu sổ chéo liên tiếp đến cuối dịng vùng thích Ví dụ: a = 5; b = 3; // khoi tao gia tri cho cac bien Cách thường dùng đoạn thích ngắn, viết đủ dịng 32 16 1.2 Các phần tử ngôn ngữ C (tiếp) Chú thích (tiếp) Cách 2:Dùng cặp kí hiệu /* */ để kí hiệu tồn vùng cặp kí hiệu /* kéo dài đến cặp kí hiệu */ vùng thích Ví dụ: /* doan chuong trinh sau khai bao bien nguyen va khoi tao gia tri cho bien nguyen */ int a, b; a = 5; b = 3; 33 1.2 Các phần tử ngôn ngữ C (tiếp) Cấu trúc chương trình C: Gồm phần có thứ tự sau sau:: Phần1: Khai báo tệp tiêu đề đề:: #include Phần 2: Định nghĩa kiểu liệu liệu:: typedef Phần 3: Khai báo hàm nguyên mẫu Phần 4: Khai báo biến toàn cục Phần 5: Nội dung hàm main() Phần 6: Nội dung hàm khai báo 34 17 1.2 Các phần tử ngôn ngữ C (tiếp) Cấu trúc chương trình C(tiếp) Phần 1: Thơng báo cho chương trình dịch biết chương trình có sử dụng thư viện  VD: #include // thao tác vào #include // hàm DOS 35 1.2 Các phần tử ngôn ngữ C (tiếp) Phần 2: Định nghĩa kiểu liệu (nếu cần) dùng cho chương trình Phần 3: Khai Khai báo hàm nguyên mẫu Phần giúp cho chương trình dịch biết thông tin hàm sử dụng chương trình 36 18 1.2 Các phần tử ngôn ngữ C (tiếp) Phần 4: Phần khai báo biến toàn cục Phần 5: Nội dung hàm main( ) ) Khi thực hiện, chương trình bắt đầu việc thực lệnh hàm main( ) ) Trong hàm main( ) :Có thể có lệnh gọi tới hàm khác Phần 6: Nội dung hàm khai báo 37 1.2 Các phần tử ngôn ngữ C (tiếp) Dưới ví dụ chương trình viết ngôn ngữ C // Chuong trinh sau se nhap vao tu ban phim so nguyen // va hien thi man hinh tong, hieu tich cua so nguyen vua nhap vao #include #include void main() { 38 19 1.2 Các phần tử ngôn ngữ C (tiếp) // khai bao cac bien chuong trinh int a, b; int tong, hieu, tich; // Nhap vao tu ban phim 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ử ngôn ngữ C (tiếp) // Tinh tong, hieu, tich cua so vua nhap tong = a+b; hieu = a – b; tich = a*b; 40 20 1.2 Các phần tử ngôn ngữ C (tiếp) // Hien thi cac gia tri man hinh printf(“\\n Tong cua so vua nhap la %d”, tong); printf(“ printf(“\\n Hieu cua so vua nhap la %d”, hieu); printf(“ printf(“\\n Tich cua so vua nhap la %d”, tich); printf(“ // Cho nguoi su dung an phim bat ki de ket thuc getch(); } 41 1.2 Các phần tử ngôn ngữ C (tiếp) Biên dịch chương trình viết ngơn ngữ C : (xem tài liệu phát)       Dùng trình biên dịch Turbo C++ 3.0 Cài đặt Turbo C++ 3.0 Viết chương trình Sửa đường dẫn tới thư viện (nếu cần) Biên dịch Chạy chương trình 42 21 1.2 Các phần tử ngôn ngữ C (tiếp) Bài tập 1: Trong định danh sau, định danh không hợp lệ: a) MAX_SINH_VIEN b) CHIEU_CAO c) ho va ten d) 1_bien_nao_do, so_thuc_1 43 1.2 Các phần tử ngôn ngữ C (tiếp) Bài tập 2: Hãy cho biết giá trị nguyên sau chương trình trình:: 0345, 0x168, 06356, 0xAF04 (giá trị hệ thập phân phân)) 44 22 1.2 Các phần tử ngôn ngữ C (tiếp) Bài tập 3: Cho biết biểu diễn dạng số thực dấu phẩy tĩnh số thực sau sau:: 535.235 E+3 256.89 EE-1 10.103 EE-5 45 1.2 Các phần tử ngôn ngữ C (tiếp) Bài tập 4: Hãy chạy thử hai chương trình sau xem có chương trình có lỗi khơng? Nếu có lỗi xem trình biên dịch báo lỗi gì? Chương trình 1: void main() { } Chương trình 2: #include #include void fct() { } 46 23 Câu hỏi ? 47 24 ... phẩy tĩnh Ví dụ dụ:: 3 .14 159 , 12 3.456 Dưới dạng số thực dấu phẩy động : Ví dụ dụ:: 31. 415 9 EE -1 = 31. 415 9 * 10 -1 12.3456 E +1 = 1. 23456 E+2 = 1. 23456 * 10 2 =12 3.456 21 1.2 Các phần tử ngôn ngữ C.. .Bài 1: Tổng quan 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ử ngôn ngữ C 1. 3 Cấu trúc chương trình C 1. 4 Biên dịch chương trình viết C 1. 5 Bài tập 1. 1 Lịch sử ngơn... từ - 32768 (=( =- 15 ) đến 32767 (=2 15 - 1) Trên kiểu liệu int ngơn ngữ C định nghĩa phép tốn số học số nguyên sau: 18 1. 2 Các phần tử ngôn ngữ C (tiếp) Đảo dấu: Cộng: Trừ: Nhân: Chia lấy phần

Ngày đăng: 30/01/2020, 15:28

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan