CHƯƠNG 2: GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH C | BÀI GIẢNG NHẬP MÔN LẬP TRÌNH

Dennis Ritchie tại Bell Telephone năm 1972. Tiền thân của ngôn ngữ B, KenThompson, cũng tại Bell Telephone. Bài giảng giúp bạn tham khảo, củng cố kiến thức và ôn tập đạt kết quả cao

Trường Đại hc Khoa hc T nhiên
Khoa Công ngh thông tin
B môn Tin hc cơ s
1
Đặng Bình Phương
dbphuong@fit.hcmuns.edu.vn
NHP MÔN LP TRÌNH
GII THIU
NGÔN NG LP TRÌNH C
VC
VC
&
&
BB
BB
22
Ni dung
NMLT - Gii thiu ngôn ng lp trình C
Gii thiu
1
B t vng ca C
2
Cu trúc chương trình C
3
Mt s d minh ha
4
VC
VC
&
&
BB
BB
33
Gii thiu
Gii thiu
Dennis Ritchie ti Bell Telephone năm 1972.
Tin thân ca ngôn ng B, KenThompson,
cũng ti
Bell Telephone.
ngôn ng lp trình có cu trúc và phân bit
ch Hoa - thường (
case sensitive)
ANSI C.
NMLT - Gii thiu ngôn ng lp trình C
VC
VC
&
&
BB
BB
44
Gii thiu
Ưu đim ca C
Rt mnh và linh động, có kh năng th hin
bt c ý tưởng nào.
Được s dng rng rãi bi các nhà lp trình
chuyên nghip.
tính kh chuyn, ít thay đổi trên các h
thng máy tính khác nhau.
Rõ ràng, cô đọng.
Lp trình đơn th, tái s dng thông qua hàm.
NMLT - Gii thiu ngôn ng lp trình C
VC
VC
&
&
BB
BB
55
Gii thiu
Môi trường phát trin tích hp IDE (Integrated
Development Environment)
Biên tp chương trình ngun (Trình EDIT).
Biên dch chương trình (Trình COMPILE).
Chy chương trình ngun (Trình RUNTIME).
Sa li chương trình ngun (Trình DEBUG).
NMLT - Gii thiu ngôn ng lp trình C
.C/.CPP .OBJ .EXE
VC
VC
&
&
BB
BB
66
Gii thiu
Môi trường lp trình
Borland C++ 3.1 for DOS.
Visual C++ 6.0, Win32 Console Application.
NMLT - Gii thiu ngôn ng lp trình C
VC
VC
&
&
BB
BB
77
B t vng ca C
Các ký tựđưc s dng
B ch cái 26 ký t Latinh A, B, C, …, Z, a, b,
c, …, z
B ch s thp phân : 0, 1, 2, …, 9
Các ký hiu toán hc : + * / = < > ( )
Các ký t đặc bit : . , : ; [ ] % \ # $
Ký t gch ni _ khong trng
NMLT - Gii thiu ngôn ng lp trình C
VC
VC
&
&
BB
BB
88
B t vng ca C
T khóa (keyword)
Các t dành riêng trong ngôn ng.
Không th s dng t khóa để đặt tên cho
biến, hàm, tên chương trình con.
Mt s t khóa thông dng:
const, enum, signed, struct, typedef, unsigned…
char, double, float, int, long, short, void
case, default, else, if, switch
do, for, while
break, continue, goto, return
NMLT - Gii thiu ngôn ng lp trình C
VC
VC
&
&
BB
BB
99
B t vng ca C
Tên/Định danh (Identifier)
Mt dãy ký t dùng để ch tên mt hng s,
hng ký t, tên mt biến, mt kiu d liu,
mt hàm mt hay th tc.
Không được trùng vi các t khóa được
to thành t các ch cái và các ch s nhưng
bt buc
ch đầu phi là ch cái hoc _.
S ký t ti đa trong m
t tên là
255 ký t
được dùng ký t _ chen trong tên nhưng
không cho phép chen gia các khong trng.
NMLT - Gii thiu ngôn ng lp trình C
VC
VC
&
&
BB
BB
1010
B t vng ca C
d Tên/Định danh (Identifier)
Các tên hp l: GiaiPhuongTrinh, Bai_Tap1
Các tên không hp l: 1A, Giai Phuong Trinh
Phân bit ch hoa ch thường, do đó các tên
sau đây khác nhau:
A, a
BaiTap, baitap, BAITAP, bAItaP, …
NMLT - Gii thiu ngôn ng lp trình C
VC
VC
&
&
BB
BB
1111
B t vng ca C
Du chm phy ;
Dùng để phân cách các câu lnh.
d: printf(“Hello World!”); printf(“\n”);
Câu chú thích
Đặt gia cp du /* */ hoc // (C++)
d: /*Ho & Ten: NVA*/, // MSSV: 0712078
Hng ký t hng chui
Hng ký t: A, a, …
Hng chui: Hello World!, Nguyen Van A
Chú ý: A khác A
NMLT - Gii thiu ngôn ng lp trình C
VC
VC
&
&
BB
BB
1212
Cu trúc chương trình C
NMLT - Gii thiu ngôn ng lp trình C
#include “…”; // Khai báo file tiêu đề
int x; // Khai báo biến hàm
void Nhap(); // Khai báo hàm
void
main() // Hàm chính
{
// Các lnh và th tc
}
VC
VC
&
&
BB
BB
1313
d
NMLT - Gii thiu ngôn ng lp trình C
#include <stdio.h>
#include <conio.h>
void
main()
{
int x, y, tong;
printf(“Nhap hai so nguyen: ”);
scanf(“%d%d”, &x, &y);
tong = x + y;
printf(“Tong hai so la %d”, tong);
getch();
}
VC
VC
&
&
BB
BB
1414
Bài tp lý thuyết
1. Tên (định danh) nào sau đây đặt không hp l,
ti sao?
Tin hoc co SO A, 1BaiTapKHO
THucHaNH, NhapMon_L@pTrinH
2. Câu ghi chú dùng để làm gì? Cách s dng ra
sao? Cho ví d minh ha.
3. Trình bày cu trúc ca mt chương trình C.
Gii thích ý nghĩa ca tng phn trong cu
trúc.
NMLT - Gii thiu ngôn ng lp trình C
| 1/4

Preview text:

Trường Đại học Khoa học Tự nhiên & & Khoa Công nghệ thông tin V V C C Nội dung Bộ môn Tin học cơ sở B B B B
NHẬP MÔN LẬP TRÌNH Đặng Bình Phương dbphuong@fit.hcmuns.edu.vn 1 Giới thiệu GIỚI THIỆU 2
Bộ từ vựng của C
NGÔN NGỮ LẬP TRÌNH C 3
Cấu trúc chương trình C 4
Một số ví dụ minh họa 1 2
NMLT - Giới thiệu ngôn ngữ lập trình C & & & & V V C C Giới thiệu V V C C Giới thiệu B B B B B B B B Giới thiệu Ưu điểm của C
Dennis Ritchie tại Bell Telephone năm 1972.
Rất mạnh và linh động, có khả năng thể hiện
Tiền thân của ngôn ngữ B, KenThompson, bất cứ ý tưởng nào. cũng tại Bell Telephone.
Được sử dụng rộng rãi bởi các nhà lập trình
Là ngôn ngữ lập trình có cấu trúc và phân biệt chuyên nghiệp.
chữ Hoa - thường (case sensitive)
Có tính khả chuyển, ít thay đổi trên các hệ ANSI C. thống máy tính khác nhau. Rõ ràng, cô đọng.
Lập trình đơn thể, tái sử dụng thông qua hàm. 3 4
NMLT - Giới thiệu ngôn ngữ lập trình C
NMLT - Giới thiệu ngôn ngữ lập trình C & & & & V V C C Giới thiệu V V C C Giới thiệu B B B B B B B B
Môi trường phát triển tích hợp IDE (Integrated Môi trường lập trình Development Environment) Borland C++ 3.1 for DOS.
Biên tập chương trình nguồn (Trình EDIT).
Visual C++ 6.0, Win32 Console Application.
Biên dịch chương trình (Trình COMPILE).
Chạy chương trình nguồn (Trình RUNTIME).
Sửa lỗi chương trình nguồn (Trình DEBUG). .C/.CPP .OBJ .EXE 5 6
NMLT - Giới thiệu ngôn ngữ lập trình C
NMLT - Giới thiệu ngôn ngữ lập trình C & & & & V V C C Bộ từ vựng của C V V C C Bộ từ vựng của C B B B B B B B B
Các ký tự được sử dụng Từ khóa (keyword)
Bộ chữ cái 26 ký tự Latinh A, B, C, …, Z, a, b,
Các từ dành riêng trong ngôn ngữ. c, …, z
Không thể sử dụng từ khóa để đặt tên cho
Bộ chữ số thập phân : 0, 1, 2, …, 9
biến, hàm, tên chương trình con.
Các ký hiệu toán học : + – * / = < > ( )
Một số từ khóa thông dụng:
Các ký tự đặc biệt : . , : ; [ ] % \ # $ ‘
• const, enum, signed, struct, typedef, unsigned…
Ký tự gạch nối _ và khoảng trắng ‘ ’
• char, double, float, int, long, short, void
• case, default, else, if, switch • do, for, while
• break, continue, goto, return 7 8
NMLT - Giới thiệu ngôn ngữ lập trình C
NMLT - Giới thiệu ngôn ngữ lập trình C & & & & V V C C Bộ từ vựng của C V V C C Bộ từ vựng của C B B B B B B B B Tên/Định danh (Identifier)
Ví dụ Tên/Định danh (Identifier)
Một dãy ký tự dùng để chỉ tên một hằng số,
Các tên hợp lệ: GiaiPhuongTrinh, Bai_Tap1
hằng ký tự, tên một biến, một kiểu dữ liệu,
Các tên không hợp lệ: 1A, Giai Phuong Trinh
một hàm một hay thủ tục.
Phân biệt chữ hoa chữ thường, do đó các tên
Không được trùng với các từ khóa và được sau đây khác nhau:
tạo thành từ các chữ cái và các chữ số nhưng • A, a
bắt buộc chữ đầu phải là chữ cái hoặc _.
• BaiTap, baitap, BAITAP, bAItaP, …
Số ký tự tối đa trong một tên là 255 ký tự và
được dùng ký tự _ chen trong tên nhưng
không cho phép chen giữa các khoảng trắng. 9 10
NMLT - Giới thiệu ngôn ngữ lập trình C
NMLT - Giới thiệu ngôn ngữ lập trình C & & & & V V C C Bộ từ vựng của C V V C C Cấu trúc chương trình C B B B B B B B B Dấu chấm phẩy ; #include “…”;
// Khai báo file tiêu đề
Dùng để phân cách các câu lệnh. int x;
// Khai báo biến hàm
Ví dụ: printf(“Hello World!”); printf(“\n”); void Nhap(); // Khai báo hàm Câu chú thích Đặ void main() // Hàm chính
t giữa cặp dấu /* */ hoặc // (C++) {
Ví dụ: /*Ho & Ten: NVA*/, // MSSV: 0712078
// Các lệnh và thủ tục
Hằng ký tự và hằng chuỗi }
Hằng ký tự: ‘A’, ‘a’, …
Hằng chuỗi: “Hello World!”, “Nguyen Van A”
Chú ý: ‘A’ khác “A” 11 12
NMLT - Giới thiệu ngôn ngữ lập trình C
NMLT - Giới thiệu ngôn ngữ lập trình C & & & & V V C C Ví dụ V V C C Bài tập lý thuyết B B B B B B B B #include
1. Tên (định danh) nào sau đây đặt không hợp lệ, #include tại sao? Tin hoc co SO A, 1BaiTapKHO void main() { THucHaNH, NhapMon_L@pTrinH int x, y, tong;
2. Câu ghi chú dùng để làm gì? Cách sử dụng ra
printf(“Nhap hai so nguyen: ”); sao? Cho ví dụ minh họa.
scanf(“%d%d”, &x, &y); tong = x + y;
3. Trình bày cấu trúc của một chương trình C.
printf(“Tong hai so la %d”, tong);
Giải thích ý nghĩa của từng phần trong cấu getch(); trúc. } 13 14
NMLT - Giới thiệu ngôn ngữ lập trình C
NMLT - Giới thiệu ngôn ngữ lập trình C