1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài giảng tin học đại cương (phần 3) bài 6 tổng quan về ngôn ngữ c

51 2 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Tổng quan về ngôn ngữ C
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Tin Học
Thể loại Bài giảng
Thành phố Hà Nội
Định dạng
Số trang 51
Dung lượng 867,6 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Định danh • Định danh Identifier – hoặc còn gọi l{ 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... – Định danh do người lập trình đặt không được trùng với

Trang 1

TIN HỌC ĐẠI CƯƠNG

Phần 3 Lập trình C

Bài 6: Tổng quan về ngôn ngữ C

Trang 2

6.1 Lịch sử ph|t triển

6.2 C|c phần tử cơ bản của ngôn ngữ C

6.3 Cấu trúc cơ bản của chương trình C

6.4 Biên dịch chương trình C

6.5 Trình biên dịch Turbo C++

2

Trang 3

6.1 Lịch sử ph|t triển

6.2 C|c phần tử cơ bản của ngôn ngữ C

6.3 Cấu trúc cơ bản của chương trình C

6.4 Biên dịch chương trình C

6.5 Trình biên dịch Turbo C++

3

Trang 4

• Ngôn ngữ 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 M Ritchie ph|t triển v{o đầu 1970, hoàn thành 1972

C dựa trên nền c|c ngôn ngữ BCPL (Basic

Combined Programming Language) và ngôn

ngữ B

• Tên l{ ngôn ngữ C như l{ sự tiếp nối ngôn ngữ

B

Trang 5

6.1 Lịch sử ph|t triển

• Đặc điểm của ngôn ngữ lập trình C

– Ngôn ngữ lập trình hệ thống

– Tính khả chuyển, linh hoạt cao

– Có thế mạnh trong xử lý dữ liệu số, văn bản, cơ

sở dữ liệu

• C thường được sử dụng để viết các chương trình hệ thống

– Hệ điều hành Unix có 90% mã C, 10% hợp ngữ – Các trình điều khiển thiết bị (device driver)

– Xử lý ảnh…

5

Trang 6

6

6.1 Lịch sử ph|t triển

• 1978: C được giới thiệu trong phiên bản đầu của

cuốn s|ch "The C programming language"

• Sau đó, C được bổ sung thêm những tính năng và khả năng mới  Đồng thời tồn tại nhiều phiên bản nhưng không tương thích nhau

• Năm 1989, Viện tiêu chuẩn quốc gia của Hoa Kỳ

(American National Standards Institute - ANSI) đ~

công bố phiên bản chuẩn hóa của ngôn ngữ C:

ANSI C hay C chuẩn hay C89

Trang 7

– Turbo C++ và Borland C++ của Borland Inc

– MSC v{ VC của Microsoft Corp

– GCC của GNU project…

7

Trang 8

Nội dung

6.1 Lịch sử ph|t triển

6.2 C|c phần tử cơ bản của ngôn ngữ C

6.3 Cấu trúc cơ bản của chương trình C

6.4 Biên dịch chương trình C

6.5 Trình biên dịch Turbo C++

8

Trang 12

• Đặt tên cho kiểu dữ liệu: int, float, double…

• Mô tả các lệnh, các cấu trúc lập trình: if, while, case…

• Chú ý:

C là ngôn ngữ phân biệt chữ hoa, chữ thường

Tất cả từ khóa trong C đều viết bằng chữ cái

Trang 13

6.2.2 Từ khóa

• Một số từ khóa hay dùng trong Turbo C

13

Trang 14

6.2.3 Định danh

Định danh (Identifier – hoặc còn gọi l{ 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

– Biến

– Hằng số

– Hàm

– Kiểu dữ liệu… (sẽ l{m quen ở c|c mục sau)

• Định danh có thể được đặt bởi

– Ngôn ngữ lập trình → c|c từ khóa

– Người lập trình

14

Trang 15

6.2.3 Định danh

• Quy tắc đặt tên định danh trong C

– C|c kí tự được sử dụng: chữ c|i, chữ số v{ dấu

gạch dưới “_” (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 các từ khóa của C

15

Trang 17

6.2.3 Định danh

• Một số quy ước (code convention)

– Nên sử dụng dấu gạch dưới để ph}n t|ch c|c định danh gồm nhiều từ

– Định danh nên có tính gợi nhớ

– Quy ước thường được sử dụng:

nhap_du_lieu, tim_kiem, xu_li Hàm

sinh_vien, mat_hang Cấu trúc

17

Trang 18

6.2.4 C|c kiểu dữ liệu

• Định nghĩa:

– 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 đó

• Ví dụ:

– Kiểu dữ liệu int (số nguyên) trong C

– Một dữ liệu thuộc kiểu dữ liệu int

• L{ một số nguyên

• Nhận gi| trị từ từ - 32,768 (- 2 15 ) đến 32,767 (2 15 - 1)

18

Trang 19

Chia lấy phần nguyên /

Chia lấy phần dư %

So sánh >, <, >=, <=, ==, !=

19

Trang 20

6.2.5 Hằng số

• Định nghĩa:

Hằng số (constant) l{ đại lượng có gi| trị

không đổi trong chương trình

• Biểu diễn hằng số trong ngôn ngữ C:

Trang 21

6.2.5 Hằng số

• Biểu diễn hằng số nguyên: trong C, một hằng

số nguyên có thể biểu diễn dưới 3 dạng

Trang 23

6.2.5 Hằng số

• Biểu diễn hằng ký tự: trong C, một hằng ký tự có thể biểu diễn theo hai cách

– Bằng ký hiệu của ký tự đặt giữa hai dấu nháy đơn

– Bằng số thứ tự của ký tự đó trong bảng mã ASCII (số

nguyên -> tuân thủ quy tắc biểu diễn hằng số nguyên)

• Ví dụ

Ký tự cần biểu diễn Cách 1 Cách 2 Chữ c|i A ‘A’ 65, 0x41, 0101

Số 1 ‘1’ 49, 0x31, 061 Dấu nh|y đơn ‘\’’ 39, 0x27, 047

Ký tự tab ‘\t’ 9, 0x09, 011 23

Trang 24

6.2.5 Hằng số

• Biểu diễn hằng x}u (chuỗi) ký tự:

– Hằng 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

• Ví dụ:

– “ngon ngu lap trinh C”

– “Tin hoc dai cuong”

– “Dai hoc Bach Khoa Ha Noi”

24

Trang 25

6.2.6 Biến

• Định nghĩa:

Biến (variable) l{ đại lượng m{ gi| trị có thể thay

đổi trong chương trình

• Biến phải thuộc một kiểu dữ liệu n{o đó

• Biến được sử dụng để lưu trữ dữ liệu, phục

vụ cho xử lý tính to|n trong chương trình

• Biến phải được đặt tên theo qui tắc đặt tên

• Chú ý:

– Biến được cấp ph|t vùng nhớ trong bộ nhớ

chính, còn hằng thì không

25

Trang 26

float r, s;//Hai biến r, s thuộc kiểu số thực

printf("Nhap ban kinh hinh tron:");

Trang 28

• 2 loại hàm:

– Hàm có sẵn trong thư viện

– Hàm do người lập trình định nghĩa (viết ra)

28

Ham Tham so vao Tham so ra

Trang 29

6.2.7 Hàm

• Ví dụ h{m có sẵn trong thư viện:

– Thư viện stdio.h h{m: scanf, printf, …

– Thư viện math.h h{m: pow, sin, cos, sqrt, …

Hàm Ý nghĩa Ký hiệu to|n học Ví dụ pow(x,y) x mũ y x y pow(2,3)=8 sin(x) Sin của x Sin(x) sin(0)=0

cos(x) Cos của x Cos(x) cos(0)=1

29

Trang 30

– C|c to|n tử rất đa dạng: cộng, trừ, nh}n, chia

• Ví dụ: Biểu thức tính biệt thức delta

b*b – 4*a*c

- a, b, c, 4 l{ c|c to|n hạng

- C|c to|n tử (phép to|n): *, -

30

Trang 31

6.2.9 C}u lệnh

Câu lệnh (statement) diễn tả một hoặc một

nhóm 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 bắt buộc có dấu chấm phẩy

‘;’ để đ|nh dấu kết thúc câu lệnh

31

Trang 32

• Lệnh xuất ra màn hình: printf(« Hello World »);

– Nhóm các câu lệnh phức: những câu lệnh chứa câu lệnh khác

– Ví dụ

• Lệnh khối đặt trong cặp ngoặc nhọn { }

32

Trang 33

• Cách viết chú thích: trong C có hai cách

– Chú thích một dòng: sử dụng //

– Chú thích nhiều dòng: sử dụng /* và */

33

Trang 34

Nội dung

6.1 Lịch sử ph|t triển

6.2 C|c phần tử cơ bản của ngôn ngữ C

6.3 Cấu trúc cơ bản của chương trình C

6.4 Biên dịch chương trình C

6.5 Trình biên dịch Turbo C++

34

Trang 35

int tong, hieu, tich;

printf(“\n Nhap vao so nguyen thu

Trang 36

Ví dụ

// Tinh tong, hieu, tich cua 2 so do tong = a+b; hieu = a – b;tich = a*b; // Hien thi cac gia tri ra man hinh printf(“\n Tong cua 2 so vua nhap

Trang 37

Phần 6: Nội dung c|c h{m đ~ khai b|o

6.3 Cấu trúc cơ bản của chương trình C

Trang 38

38

• Phần 1: Khai b|o tệp tiêu đề:

– 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 <stdio.h> // thao tác vào ra

#include <conio.h> // h{m của DOS

• Phần 2: Định nghĩa c|c kiểu dữ liệu mới

– Định nghĩa c|c kiểu dữ liệu mới (nếu cần) dùng cho cả chương trình

6.3 Cấu trúc cơ bản của chương trình C

Trang 39

39

• Phần 3: Khai b|o c|c h{m nguyên mẫu:

– 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

• Phần 4: Khai b|o c|c biến to{n cục

– Ví dụ:

int a, b;

int tong, hieu, tich;

6.3 Cấu trúc cơ bản của chương trình C

Trang 40

40

Phần 5: 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

– C{i đặt (viết m~) cho c|c h{m đ~ khai b|o

nguyên mẫu ở phần 3

6.3 Cấu trúc cơ bản của chương trình C

Trang 41

Nội dung

6.1 Lịch sử ph|t triển

6.2 C|c phần tử cơ bản của ngôn ngữ C

6.3 Cấu trúc cơ bản của chương trình C

6.4 Biên dịch chương trình C

6.5 Trình biên dịch Turbo C++

41

Trang 42

• Trên UNIX  file o

• Trên MS-DOS  file.OBJ

Link Editor

– Nếu tệp nguồn tham chiếu đến c|c h{m

thư viện/h{m được định nghĩa thì Link

editor kết hợp c|c h{m n{y với h{m

main() để tạo ra tệp có thể thực thi được

• Trong MS-DOS là file exe

6.4 Biên dịch chương trình C

Trang 43

Nội dung

6.1 Lịch sử ph|t triển

6.2 C|c phần tử cơ bản của ngôn ngữ C

6.3 Cấu trúc cơ bản của chương trình C

6.4 Biên dịch chương trình C

6.5 Trình biên dịch Turbo C++

43

Trang 44

6.5.1 Giới thiệu

• Trình biên dịch (compiler): dịch m~ nguồn

(source code) th{nh file thực thi

• C|c trình biên dịch C phổ biến

– MSC của Microsoft

– GCC của GNU

– Dev C++ của Bloodshed Software

• Turbo C++ có nhiều phiên bản

– Phiên bản lựa chọn: Turbo C++ 3.0

44

Trang 45

6.5.2 C{i đặt v{ sử dụng Turbo C++ 3.0

Cài đặt

B1: Chuẩn bị bộ c{i của Turbo C++ 3.0 (~4 MB) Copy bộ

c{i n{y v{o m|y của bạn, giả sử v{o thư mục C:\TC_Setup

B2: Đến thư mục chứa bộ c{i Turbo C++ 3.0 (như giả sử ở

trên là C:\TC_Setup) v{ kích hoạt file INSTALL.EXE để chạy

chương trình c{i đặt Chương trình c{i đặt sẽ yêu cầu bạn

chỉ ra ổ đĩa trên đó chứa bộ c{i Turbo C++ 3.0

– Enter the SOURCE drive to use:

– H~y nhập v{o tên ổ đĩa, chẳng hạn C (ta để bộ c{i Turbo

C++ 3.0 ở thư mục C:\TC_Setup)

45

Trang 46

6.5.2 C{i đặt v{ sử dụng Turbo C++ 3.0

B3: Chương trình yêu cầu bạn nhập v{o đường dẫn tới thư

mục chứa c|c file của Turbo C++ 3.0

– Enter the SOURCE Path:

– Thông thường chương trình sẽ tự tìm cho bạn, v{ bạn

chỉ cần ấn Enter để chuyển sang bước tiếp theo

B4: X|c định thư mục c{i đặt Thư mục n{y sẽ chứa c|c file

của Turbo C++ 3.0 để bạn sử dụng sau n{y

– Directories… [C:\TC]

– Option…[IDE CMD LIB CLASS BGI HELP EXMPL]

46

Trang 47

6.5.2 C{i đặt v{ sử dụng Turbo C++ 3.0

• Start Installation

Thư mục c{i đặt mặc định sẽ l{ \TC nằm trên thư mục gốc

của ổ đĩa chứa bộ c{i Nếu bạn muốn thay đổi thư mục c{i

đặt thì h~y dùng c|c phím  và  để di chuyển hộp s|ng đến phần Directories, gõ Enter v{ nhập v{o đường dẫn mới, sau

đó ấn phím Esc để trở về

• Dùng các phím  và  để di chuyển hộp s|ng đến phần

Start Installation v{ ấn Enter Chương trình sẽ tự động thực

hiện v{ ho{n tất qu| trình c{i đặt cho bạn

Turbo C++ 3.0 về m|y v{ sử dụng, nhưng bạn phải chỉ cho Turbo C++ biết đường dẫn tới c|c tệp tiêu đề v{ c|c tệp thư

viện bằng c|ch v{o menu Option, chọn Directories

47

Trang 48

6.5.2 C{i đặt v{ sử dụng Turbo C++ 3.0

• Giao diện sử dụng của chương trình

48

Trang 49

6.5.2 C{i đặt v{ sử dụng Turbo C++ 3.0

49 Video: Setup TurboC

Trang 50

6.5.2 C{i đặt v{ sử dụng Turbo C++ 3.0

• Khởi động chương trình: tìm đến thư mục

BIN trong thư mục c{i đặt v{ chạy file

TC.EXE

• Tạo cửa sổ soạn thảo mới: chọn menu File

(hoặc ấn Alt-F), sau đó chọn mục New để

mở cửa sổ soạn thảo mới

– Gõ chương trình nguồn v{o cửa số soạn thảo

– Lưu chương trình với tên file,ví dụ:

HelloWorld.cpp

• Biên dịch chương trình: bấm F9

Trang 51

Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn

Ngày đăng: 21/08/2023, 02:06

🧩 Sản phẩm bạn có thể quan tâm

w