Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Giáo trình kỹ thuật lập trình 1
PREMIUM
Số trang
106
Kích thước
2.9 MB
Định dạng
PDF
Lượt xem
1541

Giáo trình kỹ thuật lập trình 1

Nội dung xem thử

Mô tả chi tiết

ỦY BAN NHÂN DÂN TP. HỒ CHÍ MINH

TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THỦ ĐỨC

KHOA CÔNG NGHỆ THÔNG TIN

GIÁO TRÌNH

HỌC PHẦN: KỸ THUẬT LẬP TRÌNH 1

NGÀNH: CÔNG NGHỆ THÔNG TIN

TRÌNH ĐỘ: CAO ĐẲNG

Ban hành kèm theo Quyết định số: /QĐ-CNTĐ-CN ngày tháng năm

của Hiệu trưởng Trường Cao Đẳng Công Nghệ Thủ Đức.

TP. Hồ Chí Minh, năm 2020

TUYÊN BỐ BẢN QUYỀN

Tài liệu này thuộc loại sách giáo trình nên các nguồn thông tin có thể được phép

dùng nguyên bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo.

Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh doanh

thiếu lành mạnh sẽ bị nghiêm cấm.

LỜI TÁC GIẢ

Quyển giáo trình này được biên soạn dựa theo đề cương môn học

“Kỹ thuật lập trình 1” của Khoa Công nghệ thông tin Trường

Cao đẳng Công nghệ Thủ Đức.

Giáo trình biên soạn sẽ không tránh khỏi những sai sót về nội

dung lẫn hình thức, nhóm biên soạn rất mong nhận được sự g p

chân thành từ qu thầy cô và các em sinh viên để giáo trình hoàn

thiện hơn.

Tài liệu giảng dạy Th p T nh 1 Trang 1

MỤC LỤC

CONTENTS

Chương 1. TỔNG QUAN VỀ NGÔN NGỮ LẬP TRÌNH .......................................... 3

1.1| Giới thiệu....................................................................................................................4

1.2| Lịch sử phát triển Ngôn ngữ lập trình ........................................................................4

1.3| Các dạng Ngôn ngữ lập trình......................................................................................6

1.4| Các giai đoạn phát triển CHƯƠNG TRÌNH..................................................................8

1.5| Cấu trúc một chương trình C# cơ bản........................................................................9

1.6| ngôn ngữ C# .............................................................................................................10

1.7| Visual Studio IDE.......................................................................................................10

1.8| Quá trình biên dịch C#..............................................................................................16

1.9| Giải thuật và đặc tả giải thuật ..................................................................................18

1.10| Bài tập.......................................................................................................................21

Chương 2. CÁC KIỂU DỮ LIỆU, HẰNG, BIẾN..................................................... 23

2.1| Tập ký tự...................................................................................................................24

2.2| Từ khóa.....................................................................................................................24

2.3| Tên và qui ước đặt tên .............................................................................................24

2.4| Các kiểu dữ liệu xây dựng sẵn..................................................................................25

2.5| Biến...........................................................................................................................27

2.6| Hằng .........................................................................................................................29

2.7| Bài tập.......................................................................................................................31

Chương 3. TOÁN TỬ VÀ BIỂU THỨC ............................................................... 33

3.1| Các loại toán tử ........................................................................................................34

3.2| Các toán tử khác.......................................................................................................41

3.3| Chuyển đổi các kiểu dữ liệu .....................................................................................42

3.4| Biểu thức ..................................................................................................................53

3.5| Câu lệnh nhập, xuất..................................................................................................53

3.6| Bài tập.......................................................................................................................57

Chương 4. CẤU TRÚC CHỌN ........................................................................... 59

4.1| Khái niệm..................................................................................................................60

4.2| Cấu trúc điều kiện if .................................................................................................60

4.3| Cấu trúc lựa chọn switch … case…............................................................................66

4.4| Bài tập.......................................................................................................................71

Chương 5. CẤU TRÚC LẶP............................................................................... 74

5.1| Khái niệm..................................................................................................................75

5.2| Cấu trúc for...............................................................................................................75

5.3| Cấu trúc while...........................................................................................................77

5.4| Cấu trúc do…while....................................................................................................79

5.5| Cấu trúc foreach.......................................................................................................80

5.6| Cấu trúc lặ l ng nhau .............................................................................................81

5.7| Câu lệnh break, continue .........................................................................................82

5.8| Bài tập.......................................................................................................................85

Chương 6. HÀM ............................................................................................. 88

6.1| Khái niệm..................................................................................................................89

6.2| Cú pháp khai báo:.....................................................................................................89

6.3| Truyền tham số.........................................................................................................90

6.4| Kiểu trả về của hàm..................................................................................................92

Tài liệu giảng dạy Th p T nh 1 Trang 2

6.5| Cách gọi hàm............................................................................................................93

6.6| Bài tập.......................................................................................................................94

Chương 7. MẢNG MỘT CHIỀU........................................................................ 96

7.1| Khái niệm..................................................................................................................97

7.2| Cú pháp khai báo......................................................................................................97

7.3| Truy xuất trên mảng.................................................................................................98

7.4| Sử dụng mảng một chiều làm tham số cho hàm:.....................................................99

7.5| Bài tập.....................................................................................................................101

Tài liệu giảng dạy Th p T nh 1 Trang 3

1. Chương 1. TỔNG QUAN VỀ NGÔN

NGỮ LẬP TRÌNH

- Chương này nhằm giới thiệu cho sinh viên các khái

niệm cơ bản về lập trình, về các dạng ngôn ngữ lập

trình, các phương pháp lập trình hiện có. Ngoài ra

cũng cung cấp cho sinh viên cách thức để phân tích

một bài toán và mô tả giải thuật cho một bài toán.

Tài liệu giảng dạy Th p T nh 1 Trang 4

1.1| GIỚI THIỆU

Chương nh – Programs / Applications: là tập các chỉ thị (instructions) được

sắp xếp theo một trật tự định trước nhằm hướng dẫn máy tính thực hiện các thao

tác, hành động cần thiết để đáp ứng một mục tiêu đã định trước của con người như

truy xuất dữ liệu, tìm kiếm, giải bài toán, ...Các chỉ thị này có thể được viết bằng

nhiều ngôn ngữ lập trình khác nhau.

Ngôn ngữ l p trình - Programming languages: là tập từ ngữ và ký hiệu cho phép

lập trình viên (programmers) hoặc người dùng có thể giao tiếp với máy tính. Cũng

giống như ngôn ngữ tự nhiên ngôn ngữ lập trình cũng có các luật được gọi là cú

pháp (syntax) để đảm bảo ngôn ngữ đó được vận dụng một cách chính xác. Một số

ngôn ngữ lập trình thông dụng như C++, Visual Basic, C#, Java, Python.

L p trình viên – Programmers: là người có thể thiết kế, xây dựng và bảo trì các

chương máy tính hoặc phần mềm. Bằng cách thao tác các đoạn mã hoặc các ngôn

ngữ trên các công cụ lập trình.

Công cụ l p trình - Programming tools / Developer tools: công cụ lập trình hay

công cụ phát triển phần mềm là một chương trình máy tính mà các nhà phát triển

phần mềm sử dụng để tạo (create), gỡ rối (debug), duy trì (maintain), hoặc thực

hiện các hỗ trợ khác cho các chương trình hoặc các ứng dụng.

1.2| LỊCH SỬ PHÁT TRIỂN NGÔN NGỮ LẬP TRÌNH

Ngôn ngữ l p trình (programming language) là một tập con của ngôn ngữ máy

tính. Đây là một dạng ngôn ngữ được thiết kế và chuẩn hóa (đối lập với ngôn ngữ

tự nhiên) để truyền các chỉ thị cho máy tính (hoặc máy khác có bộ xử lí). Ngôn ngữ

lập trình có thể được dùng để tạo ra các chương trình nhằm mục đích điều khiển

máy tính hoặc mô tả các thuật toán để người khác đọc hiểu.

Các lĩnh vực ứng dụng của ngôn ngữ lập trình:

- Nghiên cứu khoa học: Fortran, C, Matlab, …

- Lập trình hệ thống: C, C++, …

- Tính toán trong kinh doanh: Java, C#, …

- Trí tuệ nhântạo: LISP, …

- Xử lý văn bản: Perl, Python, …

- Mục đích đặc biệt cho NNLT: make, sh-shell, …

Tài liệu giảng dạy Th p T nh 1 Trang 5

Sơ lược lịch sử phát triển ngôn ngữ lập trình

Autocode (viết năm 1952 do Alick Glennie ): Đây là tập hợp một loạt những hệ

thống ngôn ngữ lập trình đơn giản được phát triển vào những năm 50 cho hệ thống

máy tính kỹ thuật số tại đại học Manchester, Cambridge và London và được coi là

ngôn ngữ lập trình chính thức đầu tiên.

Pascal (viết năm 1970 do Niklaus Wirth): đây là ngôn ngữ được đặt theo tên nhà

toán học người Pháp Blaise Pascal. Ngôn ngữ này cho phép người dùng có thể tự

xác định dạng dữ liệu của mình theo kiểu danh sách, sơ đồ cây hay đồ thị.

C (viết năm 1972 do Brian W.Kernighan và Dennis Ritchie): Đây là một trong

những ngôn ngữ lập trình được sử dụng nhiều nhất mọi thời đại. C được thế kế để

lập trình theo cấu trúc. C là nguồn gốc của nhiều ngôn ngữ dẫn xuất bao gồm C#,

Java, JavaScript, Perl, PHP và Python. Ngôn ngữ C được dùng phổ biến trong lập

trình nền tảng (platform), lập trình hệ thống, lập trình UNIX, phát triển ứng dụng

trò chơi điện tử. Các ứng dụng www trên hệ thống máy chủ (server) và máy khách

(client) đời đầu cũng được viết bằng ngôn ngữ C.

C++ (viết năm1980 do Bjarne Stroustrup): C++ là một trong ít ngôn ngữ mà có thể

đảm nhiệm được rất nhiều vai trò trong lập trình: từ lập trình ứng dụng, lập trình

nhúng, các ứng dụng client/server, trò chơi đồ họa cho đến việc lập trình cho các hệ

thống lớn và rất lớn. C++ cho phép lập trình viên sử dụng những kĩ thuật cao cấp

như lập trình hướng đối tượng, template … mà vẫn có thể linh động cho phép can

thiệp vào sâu vào bộ nhớ bên dưới. Một số ứng dụng nổi tiếng được viết bằng C++

như Adobe, Google, Chrome, Mozilla, Firefox, Internet Explorer, MySQL, Apple

OS X, Symbian OS, Winamp Media Player, …. Chính vì vậy, mặc dù ngôn ngữ

C++ có "tuổi" khá cao nhưng nó vẫn đóng một vai trò cực kì quan trọng trong thế

giới máy tính.Perl (1987): thuộc nhóm ngôn ngữ lập trình bậc cao. Ngôn ngữ này

vay mượn không ít tính năng từ những ngôn ngữ khác như C, AWK và sad. Ban

đầu nó thô sơ đến mức hướng dẫn sử dụng chỉ có 1 trang. Thế nhưng đến nay nó đã

có thêm nhiều phiên bản và nhiều thay đổi so với ban đầu.

Python (viết năm 1991 do Guido van Rossum): ngôn ngữ này được thiết kế cực kỳ

đơn giản, thậm chí là có khả năng đọc được như bảng chữ cái. Triết lý của những

nhà phát triển ngôn ngữ nay đó là làm cho mã nguồn ngắn hơn, không dài và phức

tạp như C++ hay Java.

Java (viết năm 1995 do James Gosling và bạn đồng nghiệp ở Sun Microsystems):

ngôn ngữ này được phát triển với mục tiêu càng ít phụ thuộc vào khả năng vận

Tài liệu giảng dạy Th p T nh 1 Trang 6

hành thực tế của thiết bị càng tốt. Nói cách khác là nó chỉ cần viết một lần trên một

máy, và chạy được trên mọi máy khác. Chính vì vậy mà đến nay, từ máy tính để

bàn đến điện thoại di động Symbian S40 ta đều có thể gặp các chương trình Java.

PHP (viết năm 1995 do Rasmus Lerdorf): đây là ngôn ngữ sử dụng thực thi trên

máy chủ và dùng cho việc phát triển web. Nó thực hiện các yêu cầu của người dùng

sau đó trả kết quả lên trình duyệt qua việc kết hợp với HTML tạo ra giao diện các

trang web hiện nay. Khi mới xuất hiện, PHP không được định nghĩa là một ngôn

ngữ lập trình, tuy nhiên qua thời gian, ngôn ngữ này đã có một lượng người dùng

đông đảo và vẫn là sự lựa chọn của nhiều nhà phát triển web ngày nay.

C# (viết năm 2001 do Microsoft chủ yếu bởi Anders Hejlsberg): Visual Basic .NET

(2001): Đây là ngôn ngữ được phát triển trên nền Visual Basic và thực hiện trên

nền tảng .NET framwork. Đây là lý do vì sao khi cài đặt một số chương trình sẽ có

yêu cầu cài đặt thêm .NET framwork.

Swift (viết năm 2014 do Apple): Đây là ngôn ngữ được phát triển cho những nhà

phát triển iOS và OSX (hệ điều hành Mac). Ngôn ngữ “trẻ nhất” này được hãng

giới thiệu tại sự kiện WWDC 2014. Ngôn ngữ này có ưu điểm là mã nguồn rất

ngắn và dễ đọc. Sau khi viết, các chương trình có thể được kiểm tra rất nhanh và

các bài kiểm tra cũng sẽ ở cấp độ cao hơn. Ngoài ra đồ hoạ các chương trình dùng

ngôn ngữ này cũng sẽ đẹp hơn nhưng yêu cầu phần cứng sẽ thấp hơn.

1.3| CÁC DẠNG NGÔN NGỮ LẬP TRÌNH

Có rất nhiều loại ngôn ngữ lập trình, thông thường khi phân loại ta thường dựa vào

các yếu ba tố cơ bản sau:

1.3.1| THEO TIẾN TRÌNH LỊCH SỬ PHÁT TRIỂN

Ngôn ngữ máy – Machine language: Chương trình viết bằng ngôn ngữ máy chỉ

gồm 0 và 1 nên dễ sai sót, cồng kềnh và khó đọc, khó hiểu. Chương trình được viết

có thể được thực hiện ngay không cần qua bước trung gian nào.

Hợp ngữ - Assembly language: Các câu lệnh bao gồm hai phần: phần mã lệnh (viết

tựa tiếng Anh) chỉ phép toán cần thực hiện và phần tên biến chỉ địa chỉ chứa toán

hạng của phép toán đó. Ðể máy thực hiện được một chương trình viết bằng hợp

ngữ thì chương trình đó phải được dịch sang ngôn ngữ máy. Công cụ thực hiện việc

dịch đó được gọi là Assembler

Ngôn ngữ cấp cao – High level language: Các lệnh được mã hóa bằng một ngôn

ngữ gần với ngôn ngữ Tiếng Anh. Chương trình viết trên ngôn ngữ bậc cao phải

Tài liệu giảng dạy Th p T nh 1 Trang 7

được chuyển đổi thành chương trình trên ngôn ngữ máy bằng một chương trình

dịch mới có thể thực hiện được.

1.3.2| THEO PHƯƠNG PHÁP LẬP TRÌNH (PROGRAMMING PARADIGMS)

L p trình tuyến tính: Đặc trưng của Lập trình tuyến tính là tư duy theo lối tuần tự.

Chỉ có duy nhất một luồng công việc và các công việc được thực hiện tuần tự trong

luồng đó. Chương trình sẽ được thực hiện theo thứ tự từ đầu đến cuối, lệnh này kế

tiếp lệnh kia cho đến khi kết thúc chương trình. Nhược điểm của lập trình tuyến

tính là với các ứng dụng phức tạp, người ta không thể dùng lập trình tuyến tính để

giải quyết. Nên phương pháp Lập trình tuyến tính ngày nay chỉ được sử dụng trong

phạm vi các module nhỏ nhất của các phương pháp Lập trình khác.

L p nh hướng cấu trúc: Trong Lập trình hướng cấu trúc, chương trình chính sẽ

được chia nhỏ thành các chương trình con thực hiện một công việc xác định. Đặc

trưng cơ bản nhất của Lập trình hướng cấu trúc thể hiện ở mối quan hệ:

Chương trình = Cấu trúc dữ liệu + Giải thuật

Cấu trúc dữ liệu là cách tổ chức dữ liệu cho việc xử lý bởi một hay nhiều chương

trình nào đó.

Giải thuật là một quy trình để thực hiện một công việc xác định.

Các ngôn ngữ lập trình cấu trúc cung cấp một số cấu trúc lệnh điều khiển chương

trình. Nên có ưu điểm là chương trình dể hiểu, dể theo dõi, tư duy giải thuật rõ

ràng. Nhược điểm là lập trình cấu trúc không hỗ trợ tốt cho việc sử dụng lại mã

nguồn. Bởi giải thuật luôn phụ thuộc chặt chẽ vào cấu trúc dữ liệu. Dẫn đến khi

thay đổi cấu trúc dữ liệu phải thay đổi cả giải thuật của chương trình.Với những dự

án phần mềm lớn, Lập trình cấu trúc tỏ ra không hiệu quả trong việc giải quyết các

mối quan hệ vĩ mô giữa các Module.

L p nh hướng đối ượng : Trong lập trình hướng đối tượng, người ta quy ước

các thực thể trong chương trình thành các đối tượng. Và trừu tượng hóa các đối

tượng thành các lớp đối tượng. Dữ liệu được tổ chức thành các Lớp đối tượng. Từ

đó việc quản lý bảo mật của dữ liệu được đảm bảo. Hai đặc trưng là tính đóng gói

dữ liệu và tính sử dụng lại mã nguồn. Nên ưu điểm của lập trình hướng đối tượng là

bảo mật dữ liệu chương trình, giảm sự phụ thuộc của Cấu trúc dữ liệu vào Thuật

toán, có thể sử dụng lại mã nguồn.

L p trình trực quan: Lập trình trực quan là sự kết hợp giữa đồ họa máy tính ,

ngôn ngữ lập trình và tương tác người máy. So với các ngôn ngữ lập trình bằng chế

Tải ngay đi em, còn do dự, trời tối mất!