Nội dung giáo trình được chia làm 16 bài với những nội dung chính sau: Giới thiệu về thuật toán; giới thiệu ngôn ngữ lập trình C; trình bày các thành phần cơ bản của ngôn ngữ lập trình C; sử dụng các phép toán và câu lệnh nhập; xuất trong lập trình C; sử dụng câu lệnh có cấu trúc điều kiện; sử dụng cấu trúc vòng lặp for; sử dụng cấu trúc vòng lặp while; sử dụng cấu trúc vòng lặp do..while; sử dụng các câu lệnh break, continue, goto; giới thiệu về hàm; truyền tham số cho hàm; nhập xuất dữ liệu cho mảng một chiều; sử dụng mảng một chiều làm tham số cho hàm; sắp xếp mảng một chiều; nhập xuất chuỗi ký tự; thao tác trên chuỗi ký tự.
UBND TỈNH BÀ RỊA- VŨNG TÀU TRƯỜNG CAO ĐẲNG KỸ THUẬT CƠNG NGHỆ GIÁO TRÌNH MƠ ĐUN: LẬP TRÌNH CƠ BẢN NGHỀ: CƠNG NGHỆ THƠNG TIN TRÌNH ĐỘ: CAO ĐẲNG Ban hành kèm theo Quyết định số: /QĐ-CĐKTCN ngày….tháng….năm Hiệu trưởng Trường Cao đẳng Kỹ thuật Công nghệ BR – VT) BÀ RỊA–VŨNG TÀU, NĂM 2020 TUYÊN BỐ BẢN QUYỀN Nhằm đáp ứng nhu cầu học tập nghiên cứu cho giảng viên sinh viên nghề Công nghệ Thông tin trường Cao đẳng Kỹ thuật Công nghệ Bà Rịa – Vũng Tàu, thực biên soạn tài liệu Lập trình Tài liệu biên soạn thuộc loại giáo trình phục vụ giảng dạy học tập, lưu hành nội Nhà trường nên nguồn thông tin phép dùng ngun trích dùng cho mục đích đào tạo tham khảo Mọi mục đích khác mang tính lệch lạc sử dụng với mục đích kinh doanh thiếu lành mạnh bị nghiêm cấm LỜI GIỚI THIỆU Giáo trình lập trình C xây dựng biên soạn sở chương trình khung đào tạo cao đẳng nghề cơng nghệ thông tin Trường Cao Đẳng Kỹ thuật Công nghệ Bà Rịa – Vũng Tàu phê duyệt Giáo Trình biên soạn nhằm đáp ứng yêu cầu học tập sinh viên bước đầu làm quen với công việc lập trình, đồng thời giúp cho sinh viên có tài liệu học tập, rèn luyện tốt khả lập trình, tạo tảng vững cho mơn học Nội dung giáo trình chia làm 16 bài: Bài 1: Giới thiệu thuật toán Bài 2: Giới thiệu ngơn ngữ lập trình C Bài 3: Trình bày thành phần ngơn ngữ lập trình C Bài 4: Sử dụng phép tốn câu lệnh nhập, xuất lập trình C Bài 5: Sử dụng câu lệnh có cấu trúc điều kiện Bài 6: Sử dụng cấu trúc vòng lặp for Bài 7: Sử dụng cấu trúc vòng lặp while Bài 8: Sử dụng cấu trúc vòng lặp while Bài 9: Sử dụng câu lệnh break, continue, goto Bài 10: Giới thiệu hàm Bài 11: Truyền tham số cho hàm Bài 12: Nhập xuất liệu cho mảng chiều Bài 13: Sử dụng mảng chiều làm tham số cho hàm Bài 14: Sắp xếp mảng chiều Bài 15: Nhập xuất chuỗi ký tự Bài 16: Thao tác chuỗi ký tự Trong trình biên soạn giáo trình, tác giả cố gắng cập nhật thông tin mới, đồng thời tham khảo nhiều giáo trình khác, chắn khơng tránh khỏi hạn chế định Rất mong nhận ý kiến đóng góp nhà chun mơn, anh chị đồng nghiệp bạn độc giả để giáo trình hoàn thiện Bà Rịa – Vũng Tàu, ngày tháng năm 2020 Biên soạn Nguyễn Thị Mai MỤC LỤC GIÁO TRÌNH MƠ ĐUN Tên mơ đun: Lập trình Mã mơ đun: MĐ10 Vị trí, tính chất, ý nghĩa vai trị mơ đun: - Vị trí: Mơ đun bố trí sau học xong mơn tin học tin học nâng cao - Tính chất: Mơ đun u cầu phải có tư logic kiến thức tốn Mục tiêu mơ đun: - Về kiến thức: + Phân tích xây dựng thuật toán + Khai báo biến dùng chương trình + Trình bày lệnh nhập xuất phép tốn lập trình c + Trình bày vẽ lưu đồ thuật toán cấu trúc điều khiển cấu trúc lặp + Trình bày hàm kết trả hàm + Trình bày kiểu liệu có cấu trúc điều kiện - Về kỹ năng: + Sử dụng câu lệnh nhập xuất vào tập tính tốn + Sử dụng câu lệnh có cấu trúc điều khiển cấu trúc lặp vào tập + Vận dụng hàm vào chương trình + Sử dụng kiểu liệu có cấu trúc điều kiện vào tập + Viết chương trình + Biên dịch, kiểm tra sửa lỗi chương trình + Chạy chương trình kiểm nghiệm kết - Về lực tự chủ trách nhiệm: + Có tinh thần trách nhiệm, ý thức tổ chức kỷ luật, tác phong công nghiệp, tinh thần hợp tác công việc + Có ý chủ động, độc lập cơng việc, tự học cập nhật kiến thức, nâng cao trình độ chun mơn + Có khả tổ chức điều hành nhóm, đánh giá thành viên nhóm + Rèn luyện tính cẩn thận, kiên trì, sáng tạo, độc lập hoạt động nhóm + Bảo đảm an toàn vệ sinh cho người thiết bị phịng máy Nội dung mơ đun: BÀI 1: THUẬT TOÁN Mã bài: 10.1 Giới thiệu: Bài học giới thiệu khái niệm toán tin học, khái niệm thuật toán, đặc trưng thuật toán phương pháp biểu diễn thuật toán Mục tiêu: - Giới thiệu thuật tốn - Trình bày đặc trưng thuật toán - Nêu phương pháp biểu diễn thuật toán - Rèn luyện tính cẩn thận, kiên trì, sáng tạo - Bảo đảm an toàn vệ sinh cho người thiết bị phịng máy Nội dung chính: 1. Ví dụ Xét yêu cầu sau: - Bài 1: Tính chu vi, diện tích hình chữ nhật - Bài 2: Viết dịng chữ hình máy tính - Bài 3: Quản lý cán quan - Bài 4: Tìm số lớn hai số nguyên dương a b - Bài 5: Xếp loại học tập học sinh lớp àTrong yêu cầu trên, yêu cầu xem toán? 2. Khái niệm 2.1. Khái niệm về bài tốn - Bài tốn việc mà người muốn máy tính thực - Các yếu tố tốn: + Input: Thơng tin biết, thơng tin đưa vào máy tính + Output: Thơng tin cần tìm, thơng tin lấy từ máy tính Ví dụ 1: Tính chu vi, diện tích hình chữ nhật - Input: Các cạnh hình chữ nhật - Output: chu vi diện tích hình chữ nhật Ví dụ 2: Tìm giá trị nhỏ số dãy số - Input: Các số dãy số - Output: Giá trị nhỏ dãy số Ví dụ 3: Xếp loại học tập học sinh lớp - Input: Bảng điểm học sinh - Output: Bảng xếp loại học tập 2.2. Khái niệm thuật toán Thuật toán: Là tập hợp (dãy) hữu hạn thị (hành động) định nghĩa rõ ràng nhằm giải tốn cụ thể Tính chất thuật tốn: - Tính xác: q trình tính tốn hay thao tác máy tính thực xác - Tính rõ ràng: câu lệnh minh bạch xếp theo thứ tự định - Tính khách quan: viết nhiều người máy tính kết phải - Tính phổ dụng: áp dụng cho lớp tốn có đầu vào tương tự - Tính kết thúc: hữu hạn bước tính tốn 3. Các đặc trưng của thuật tốn Trong giáo trình giới thiệu cách mơ tả thuật toán: 3.1. Liệt kê Nêu thao tác cần tiến hành Ví dụ: Tìm nghiệm phương trình bậc tổng quát: ax + b = (ã) Giải tốn thơng thường: - Nếu a = (ã) pt bậc + Nếu b = (ã) vơ số nghiệm + Nếu b ≠ (ã) vơ nghiệm - Nếu a ≠ (ã) có nghiệm x = -b/a Liệt kê: - Bước 1: Nhập a, b - Bước 2: Nếu a = quay lại bước 1, ngược lại qua bước - Bước 3: Gán cho x giá trị -b/a, qua bước - Bước 4: Đưa kết x kết thúc 3.2. Dùng sơ đồ khối Dùng số biểu tượng thể thao tác - Trong sơ đồ khối, người ta dùng số biểu tượng thể thao tác như: Bảng 1.1: Bảng ký hiệu biểu diễn thuật toán STT 10 Ký hiệu Ý nghĩa Bắt đầu / kết thúc chương trình Nhập/ xuất dữ liệu BÀI 14: SẮP XẾP MẢNG MỘT CHIỀU Mã bài: 10.14 Giới thiệu: Sắp xếp trình xử lý danh sách phần tử để đặt chúng theo thứ tự thỏa mãn tiêu chuẩn dựa nội dung thông tin lưu giữ phần tử Bài học giúp biết ý tưởng, bước tiến hành thuật toán xếp mảng chiều phương pháp đổi chỗ Mục tiêu: - Trình bày thuật tốn xếp mảng chiều - Áp dụng thuật toán xếp vào tập - Tích cực hóa người học, rèn luyện tính cẩn thận, kiên trì, sáng tạo, độc lập hoạt động nhóm - Bảo đảm an toàn vệ sinh cho người thiết bị phịng máy Nội dung chính: Ý tưởng Xuất phát từ đầu dãy, tìm tất các nghịch chứa phần tử này, triệt tiêu chúng cách đổi chỗ phần tử cặp nghịch Lặp lại xử lý với phần tử kế dãy (Nghịch thế: Là xét dãy a1, a2, ……… an Nếu iaj gọi nghịch thế) Các bước tiến hành sau + Bước 1: i = 0; // đầu dãy + Bước 2: j = i+1; //tìm nghịch với a[i] + Bước 3: 94 Trong j < N thực Nếu a[j] " ABCABE"; Xác định độ dài chuỗi - Hàm strlen() - n = strlen(s1): cho biết độ dài chuỗi s1 - Ví dụ: Sử dụng hàm strlen xác định độ dài chuỗi nhập từ bàn phím 102 #include #include #include int main(){ char Chuoi[255]; int Dodai; printf("Nhap chuoi: ");gets(Chuoi); Dodai = strlen(Chuoi) printf("Chuoi vua nhap: ");puts(Chuoi); printf(“Co dai %d”,Dodai); getch(); } Đổi ký tự thường thành ký tự hoa - Hàm toupper() #include #include #include main() { char n,k; printf(“ nhap ky tu”); scanf(“%c”, &n); k= toupper(n); printf(“ chu hoa la %c”,k); getch(); } Đổi ký tự chữ hoa thành ký tự chữ thường, hàm tolower(ch); Đổi chuỗi chữ thường thành chuỗi chữ hoa, hàm strupr() -Cú pháp: char *strupr(char *s) - Ý nghĩa:Hàm struppr() dùng để chuyển đổi chuỗi chữ thường thành chuỗi chữ hoa, kết trả hàm trỏ đến địa chuỗi chuyển 103 đổi - Ví dụ: Viết chương trình nhập vào chuỗi ký tự từ bàn phím Sau sử dụng hàm strupr() để chuyển đổi chúng thành chuỗi chữ hoa #include #include #include main() { char Chuoi[255],*s; printf("Nhap chuoi: ");gets(Chuoi); s=strupr(Chuoi) ; printf(“Chuoi chu hoa: ”);puts(s); } Đổi chuỗi chữ hoa thành chuỗi chữ thường, hàm strlwr() - Muốn chuyển đổi chuỗi chữ hoa thành chuỗi toàn chữ thường, ta sử dụng hàm strlwr(), tham số hàm tương tự hàm strupr() Cú pháp: char *strlwr(char *s) So sánh chuỗi, hàm strcmp() - Cú pháp: n= strcmp (s1,s2) - Ý nghĩa: so sánh chuỗi s1,s2 (so theo mã ASCII ký tự) + n>0: s1> s2 n = 0: s1=s2 n < 0: s1