ĐỀ CƢƠNG CHI TIẾT HỌC PH -...

25
KHOA CÔNG NGHỆ THÔNG TIN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc ĐỀ CƢƠNG CHI TIẾT HỌC PHẦN LẬP TRÌNH CƠ BẢN PROGRAMMING BASICS 1. Thông tin về giáo viên TT Họ tên giáo viên Học hàm Học vị Đơn vị công tác (Bộ môn) 1 Nguyễn Thị Hiền GV ThS Công nghệ phần mềm Thời gian, địa điểm làm việc: văn phòng Bộ môn Công nghệ phần mềm Địa chỉ liên hệ: Bộ môn CNPM – Khoa CNTT Điện thoại, email: 0912092486, [email protected] Các hướng nghiên cứu chính: Lập trình Gien, Học máy, Tính toán tự nhiên 2. Thông tin chung về học phần - Tên học phần: LẬP TRÌNH CƠ BẢN - Mã học phần: 12500151 - Số tín chỉ: 3 - Cấu trúc học phần: 3(2,2): 60 tiết (45-15 0 0) - Học phần (bắt buộc hay lựa chọn): bắt buộc - Các học phần tiên quyết: không - Các yêu cầu đối với học phần (nếu có): - Giờ tín chỉ đối với các hoạt động: Nghe giảng lý thuyết: 45 Làm bài tập trên lớp: 15 Thảo luận: Thực hành, thực tập (ở PTN, nhà máy, thực tập...): Hoạt động theo nhóm: Tự học: 90 - Khoa/Bộ môn phụ trách học phần, địa chỉ: Bộ môn Công nghệ phần mềm - Khoa Công nghệ thông tin Điện thoại: 069515338

Transcript of ĐỀ CƢƠNG CHI TIẾT HỌC PH -...

Page 1: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

KHOA CÔNG NGHỆ THÔNG TIN

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh phúc

ĐỀ CƢƠNG CHI TIẾT HỌC PHẦN

LẬP TRÌNH CƠ BẢN –PROGRAMMING BASICS

1. Thông tin về giáo viên

TT Họ tên giáo

viên

Học hàm Học vị Đơn vị công tác (Bộ môn)

1 Nguyễn Thị

Hiền

GV ThS Công nghệ phần mềm

Thời gian, địa điểm làm việc: văn phòng Bộ môn Công nghệ phần mềm

Địa chỉ liên hệ: Bộ môn CNPM – Khoa CNTT

Điện thoại, email: 0912092486, [email protected]

Các hướng nghiên cứu chính: Lập trình Gien, Học máy, Tính toán tự nhiên

2. Thông tin chung về học phần

- Tên học phần: LẬP TRÌNH CƠ BẢN

- Mã học phần: 12500151

- Số tín chỉ: 3

- Cấu trúc học phần: 3(2,2): 60 tiết (45-15 – 0 – 0)

- Học phần (bắt buộc hay lựa chọn): bắt buộc

- Các học phần tiên quyết: không

- Các yêu cầu đối với học phần (nếu có):

- Giờ tín chỉ đối với các hoạt động:

Nghe giảng lý thuyết: 45

Làm bài tập trên lớp: 15

Thảo luận:

Thực hành, thực tập (ở PTN, nhà máy, thực tập...):

Hoạt động theo nhóm:

Tự học: 90

- Khoa/Bộ môn phụ trách học phần, địa chỉ: Bộ môn Công nghệ phần mềm

- Khoa Công nghệ thông tin

Điện thoại: 069515338

Page 2: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

2

Email: [email protected]

3. Mục tiêu của học phần

- Kiến thức: Lập trình cơ bản là một trong các môn học cơ sở của sinh viên

ngành Công nghệ Thông tin. Môn học nhằm trang bị cho sinh viên những

hiểu biết cơ bản về ngành CNTT, kiến thức cơ bản về lập trình, về ngôn

ngữ lập trình bậc cao, kỹ năng phân tích và xây dựng chương trình trong

một ngôn ngữ cụ thể.

- Kỹ năng: Sử dụng ngôn ngữ lập trình, gỡ rối chương trình

- Thái độ, chuyên cần: lên lớp đầy đủ và chuẩn bị cho giờ lên lớp theo yêu

cầu của giáo viên

4. Tóm tắt nội dung học phần (khoảng 150 từ)

Cung cấp những kiến thức cơ bản về:

1. Lịch sử phát triển ngành CNTT

2. Các lĩnh vực ứng dụng của CNTT

3. Các lĩnh vực học thuật có nhu cầu sử dụng CNTT

4. Một số nội dung nhập môn về tin học

Khái niệm về thông tin và xử lý thông tin

Các thiết bị tính toán,

Một số kỹ năng cơ bản với máy tính,

Một số khái niệm về ngôn ngữ lập trình, và giải thuật.

Một số công cụ hỗ trợ kỹ thuật lập trình thông dụng như Matlab,

hay C

5. Nội dung chi tiết học phần (tên các chương, mục, tiểu mục)

Chương,

mục, tiểu

mục

Nội dung Số

tiết

Giáo trình,

Tài liệu tham

khảo

(Ghi TT của

TL ở mục 6)

Ghi chú

Phần I: Cơ sở CNTT

Chương 1:

Giới thiệu

chung về

CNTT

1. Lịch sử phát triển ngành

CNTT

2. Các lĩnh vực ứng dụng của

CNTT

3. Các lĩnh vực học thuật có nhu

cầu sử dụng CNTT

3 3

Chương 2 - 1 Thông tin và xử lý thông tin 3 1

Page 3: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

3

Máy tính

điện tử và

xử lý thông

tin.

bằng máy tính điện tử

1.1 Khái niệm về thông tin,

độ đo thông tin, mã hoá thông

tin

1.2 Xử lý thông tin tự động

bằng máy tính điện tử

1.3 Tin học và công nghệ

thông tin

2 Máy tính điện tử

2.1 Kiến trúc chung của máy

tính điện tử

2.2 Nguyên lý Von Neumann

2.3 Bộ nhớ

2.4 Các thiết bị vào – ra

2.5 Bộ xử lý

2.6 Quá trình thi hành lệnh

2.7 Các thế hệ máy tính điện tử

Chương 3:

Các hệ đếm

thường

dùng trong

tin học và

biểu diễn

thông tin

trong máy

tính

1 Các hệ đếm thường dùng trong

tin học

1.1 Hệ đếm

1.2 Tìm biểu diễn số trong

các hệ đếm

1.3 Số học nhị phân

2 Biểu diễn thông tin trong máy

tính

2.1 Dữ liệu kiểu số

2.2 Dữ liệu phi số

2.3 Biểu diễn thông tin

trong máy tính

5 1

Chương 4:

Phần mềm

máy tính và

mạng máy

tính

1. Phần mềm

1.1 Phần mềm hệ thống

1.2 Phần mềm công cụ

1.3 Phần mềm ứng dụng

1.4 Phần mềm tiện ích

1.5 Quá trình xây dựng

4 1

Page 4: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

4

phần mềm

2. Mạng máy tính

2.1 Các mô hình xử lý

cộng tác

2.2 Mạng máy tính

2.3 Khái niệm về Internet

2.4 Các tài nguyên, dịch

vụ trên Internet

Phần II: Giải thuật và ngôn ngữ lập trình

Chương 5

Giải thuật

xử lý thông

tin và ngôn

ngữ lập

trình

1. Khái niệm bài toán giải

thuật

2. Đặc trưng của giải thuật

3. Các phương pháp diễn đạt

giải thuật

4. Sơ lược về đánh giá giải

thuật

5. Ngôn ngữ lập trình và các

mức khác nhau của ngôn

ngữ lập trình

6. Quá trình thực hiện

chương trình trên ngôn

ngữ bậc cao

5 2, 4

Page 5: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

5

Chương 6:

Các khái

niệm cơ

bản trong

ngôn ngữ

lập trình C

1. Giới thiệu ngôn ngữ lập

trình C

2. Các kiểu dữ liệu cơ bản

3. Biến, hằng và biểu thức

4. Các phép toán

5. Cấu trúc chương trình

6. Hàm main và đối số dòng

lệnh

7. Khai báo biến

8. Phát biểu include

9. Câu lệnh

10. Xuất dữ liệu ra thiết bị

chuẩn: các hàm putch,

puts, printf

11. Nhập dữ liệu từ thiết bị

chuẩn: các hàm getch,

gets, scanf

3 2, 4

Chương 7:

Các cấu

trúc điều

khiển

1. Cấu trúc tuần tự

2. Cấu trúc rẽ nhánh (if,

switch)

3. Cấu trúc lặp (for, while, do

while)

12 2, 4

Page 6: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

6

Chương 8:

Mảng, con

trỏ và xâu

ký tự

1. Mảng một chiều và nhiều

chiều

2. Con trỏ và địa chỉ

3. Các phép toán với con trỏ

4. Liên hệ giữa con trỏ và

mảng

5. Xâu ký tự và một số hàm

làm việc với xâu ký tự

8 2, 4

Chương 9:

Giới thiệu

về hàm

1. Khái niệm

2. Prototype, định nghĩa và

các kiểu của hàm

3. Biến cục bộ

4. Truyền tham số và giá trị

trả lại

5. Hàm inline

6. Đệ quy

8 2, 4

Chương 10:

Cấu trúc dữ

liệu

1. Khái niệm về trừu tượng

dữ liệu

2. Cấu trúc dữ liệu đơn giản

3. Cấu trúc dữ liệu nâng cao

(mảng, con trỏ, tích hợp,..)

4 2, 4

Chương 11:

Làm việc

với tệp

1. Các hàm fopen, fclose,

fscanf, fprintf, fflush

2. Đọc và ghi tệp ngẫu nhiên:

các hàm fread, frwite

4 2, 4

6. Giáo trình, tài liệu tham khảo

TT Tên giáo trình, tài liệu Tình trạng giáo trình, tài liệu

1 Giáo trình tin học cơ sở, Hồ Sỹ

Đàm, Đào Kiến Quốc, Hồ Đắc

Phương. Đại học Sư phạm, 2004.

Giáo viên

2 Kỹ thuật lập trình C: cơ sở và nâng Thư

Page 7: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

7

cao, Phạm Văn Ất viện có

3 Computing Essentials, Tim and

Linda O’Leary, McGraw-Hill, 2012

Giáo viên

4 The C programming language 2nd

Edition, Brian Kernighan and

Dennis Ritchie, Prentice Hall

Software Series

Giáo viên

7. Hình thức tổ chức dạy học

7.1. Lịch trình chung: (Ghi tổng số giờ cho mỗi cột)

Nội dung

Hình thức tổ chức dạy học

môn học

Tổng

Lên lớp Thực

hành

, thí

nghiệ

m,

thực

tập...

Tự

học,

tự

nghi

ên

cứu

thuyế

t

Bài

tập

Th

ảo

luậ

n

Phần I: Cơ sở CNTT 13 2 15

1 - Giới thiệu chung về CNTT 3 3

2 - Máy tính điện tử và xử lý

thông tin.

3 6

3 - Các hệ đếm thường dùng

trong tin học và biểu diễn thông

tin trong máy tính

3 2 5

4- Phần mềm máy tính và mạng

máy tính

4 4

Phần II: Giải thuật và ngôn ngữ

lập trình

30 12 45

5 - Giải thuật xử lý thông tin và

ngôn ngữ lập trình

3 2 5

Page 8: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

8

6- Các khái niệm cơ bản trong

ngôn ngữ lập trình C

3 1 4

7 - Các cấu trúc điều khiển 9 3 12

8 - Mảng, con trỏ và xâu ký tự 6 2 8

9- Giới thiệu về hàm 6 2 8

10 - Cấu trúc dữ liệu 3 1 4

11 - Làm việc với tệp 3 1 4

7.2. Lịch trình tổ chức dạy học cụ thể

- Nội dung 1, Tuần 1: Giới thiệu chung về CNTT

Hình thức tổ

chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu

cầu

SV

chuẩn

bị

Ghi chú

Lý thuyết Theo

bố

trí

của

P2

1. Lịch sử phát triển ngành CNTT

2. Các lĩnh vực ứng dụng của CNTT

3. Các lĩnh vực học thuật có nhu cầu

sử dụng CNTT

Đọc

trước

chương

1, 3 tài

liệu 3.

Bài tập

Thảo luận

Thực hành, thí

nghiệm, thực

tập, rèn nghề…

Tự học, tự

nghiên cứu

- Nội dung 2, Tuần 2: Máy tính điện tử và xử lý thông tin

Hình

thức tổ

chức

Thời

gian,

địa

Nội dung chính Yêu cầu

SV

chuẩn

Ghi

chú

Page 9: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

9

dạy học điểm bị

Lý thuyết Theo

bố trí

của P2

1 Thông tin và xử lý thông tin bằng máy tính

điện tử

1.1 Khái niệm về thông tin, độ đo thông

tin, mã hoá thông tin

1.2 Xử lý thông tin tự động bằng máy tính

điện tử

1.3 Tin học và công nghệ thông tin

2 Máy tính điện tử

2.1 Kiến trúc chung của máy tính điện tử

2.2 Nguyên lý Von Neumann

2.3 Bộ nhớ

2.4 Các thiết bị vào – ra

2.5 Bộ xử lý

2.6 Quá trình thi hành lệnh

2.7 Các thế hệ máy tính điện tử

Đọc

chương

1,2, 3 tài

liệu [1]

Bài tập

Thảo luận

Thực

hành, thí

nghiệm,

thực tập,

rèn

nghề…

Tự học, tự

nghiên

cứu

Nội dung 3, Tuần 3: Các hệ đếm thường dùng trong tin học và biểu diễn

thông tin trong máy tính

Hình

thức tổ

chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu

cầu SV

chuẩn

bị

Ghi

chú

Page 10: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

10

Lý thuyết Theo

bố trí

của P2

1 Các hệ đếm thường dùng trong tin học

1.1 Hệ đếm

1.2 Tìm biểu diễn số trong các hệ đếm

1.3 Số học nhị phân

2 Biểu diễn thông tin trong máy tính

2.1 Dữ liệu kiểu số

2.2 Dữ liệu phi số

2.3 Biểu diễn thông tin trong máy tính

Đọc

chương

4, 6 tài

liệu [1]

Bài tập 1. Đổi các số thập phân sau đây ra hệ nhị

phân: 10, 15, 29, 8.625, 77

2. Hãy đổi các số nhị phận sau đây ra hệ

thập phân: 11, 101, 1010, 11001, 1011.110

3. Đổi các số nhị phân sau đây ra hệ 16

11010110101, 1011111000101,

1111011101.1100101

4. Đổi các số hệ 16 ra hệ nhị phân 3E5,

35FA, A54

Thảo luận

Thực

hành, thí

nghiệm,

thực tập,

rèn

nghề…

Tự học, tự

nghiên

cứu

Nội dung 4, Tuần 4: Phần mềm máy tính và mạng máy tính

Hình

thức tổ

chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu

cầu SV

chuẩn

bị

Ghi

chú

Page 11: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

11

Lý thuyết Theo

bố trí

của P2

1. Phần mềm

1.1 Phần mềm hệ thống

1.2 Phần mềm công cụ

1.3 Phần mềm ứng dụng

1.4 Phần mềm tiện ích

1.5 Quá trình xây dựng phần mềm

2. Mạng máy tính

2.1 Các mô hình xử lý cộng tác

2.2 Mạng máy tính

2.3 Khái niệm về Internet

2.4 Các tài nguyên, dịch vụ trên Internet

Đọc

chương

8, 12,

13 tài

liệu [1]

Bài tập

Thảo luận

Thực

hành, thí

nghiệm,

thực tập,

rèn

nghề…

Tự học, tự

nghiên

cứu

Tuần 5: Giải thuật xử lý thông tin và ngôn ngữ lập trình

Hình

thức tổ

chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu

cầu

SV

chuẩn

bị

Ghi

chú

Lý thuyết Theo

bố trí

của P2

1. Khái niệm bài toán giải thuật

2. Đặc trưng của giải thuật

3. Các phương pháp diễn đạt giải thuật

4. Sơ lược về đánh giá giải thuật

5. Ngôn ngữ lập trình và các mức khác

nhau của ngôn ngữ lập trình.

6. Quá trình thực hiện chương trình trên

Đọc

chương

7, 9 tài

liệu [1]

Page 12: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

12

ngôn ngữ bậc cao

Bài tập 1. Cho tam giác ABC có góc vuông A và cho

biết cạnh a và góc B. Hãy viết thuật toán để

tính góc C, cạnh b và cạnh c.

2. Trình bày tính chất xác định của thuật toán

và nêu rõ nghĩa của tính chất này.

3*.Hãy phát biểu thuật toán để giải bài toán

sau: "Có một số quả táo. Dùng cân hai đĩa

(không có quả cân) để xác định quả táo nặng

nhất"

4. Xác định input và output cho các thuật toán

sau đây:

a) Rút gọn một phân số.

b) Kiểm tra xem ba số cho trước a, b và c có

thể là độ dài ba cạnh của một tam giác hay

không?

c) Tính trung bình cộng của hai số.

d) Dùng một cốc phụ để tráo nước ở hai cốc

cho trước.

e) Tìm chu vi và diện tích của hình tròn có bán

kính cho trước.

5. Chỉ dùng phép cộng, viết thuật toán để từ số

tự nhiên n, tính số n2

Thảo luận

Thực

hành, thí

nghiệm,

thực tập,

rèn

nghề…

Tự học, tự

Page 13: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

13

nghiên

cứu

Tuần 6: Các khái niệm cơ bản trong ngôn ngữ lập trình C

Hình thức

tổ chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu cầu

sinh viên

chuẩn bị

Ghi

chú

Lý thuyết

Theo

bố trí

của P2

- Ngôn ngữ lập trình, đặc điểm của C

- Bảng chữ cái, tên, quy tắc đặt tên trong C, từ

khoá

- Các kiểu dữ liệu cơ bản: tên, kích thước,

miền giá trị, quy tắc chuyển kiểu tự động

- Các phép toán của C: phép gán, các phép

toán số học, so sánh, logic, các phép toán thao

tác trên bit, các phép toán tích luỹ, toán tử

điều kiện, toán tử tăng/giảm 1, toán tử &, *,

độ ưu tiên của các toán tử

- Khái niệm biến, hằng, biểu thức

- Lệnh khai báo biến, hằng

Cấu trúc chương trình và nhập xuất dữ liệu

- Cấu trúc, ý nghĩa các thành phần

- Lệnh và khối lệnh;

- Biên dịch và thực hiện chương trình

- Ví dụ chương trình đơn giản để minh hoạ

- Sử dụng các hàm nhập / xuất chuẩn của C

(cách dùng, ý nghĩa, định dạng dữ liệu nhập

xuất)

- Ví dụ: nhập 2 số nguyên và in ra màn hình

- Giới thiệu cách sử dụng một số hàm thông

dụng trong thư viện C

- Đọc

chương 2,

3 tài liệu

[2],

chương 2

tài liệu

[4].

Bài tập

Thảo luận

Thực

hành, thí

nghiệm...

Page 14: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

14

Tự học, tự

nghiên

cứu

Tuần 7: Các cấu trúc điều khiển

Hình

thức tổ

chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu cầu sinh viên

chuẩn bị

Ghi

chú

Lý thuyết

Theo bố

trí của

P2

- Cấu trúc điều khiển

- Cấu trúc rẽ nhánh if: cú pháp, sơ

đồ khối của cấu trúc, ý nghĩa

- Ví dụ 1: chương trình nhập số

nguyên dương, kiểm tra số đó có là

số chính phương hay không;

- Ví dụ 2: chương trình tìm nghiệm

của phương trình bậc 2

- Cấu trúc rẽ nhánh switch: cú

pháp, ý nghĩa

- Ví dụ (minh hoạ cấu trúc

switch): nhập biểu thức đơn giản

dạng a b (: có thể là phép

toán số học, hoặc quy ước x, : )

tính giá trị của biểu thức đó

- Cấu trúc lặp while: cú pháp, sơ

đồ khối của cấu trúc, ý nghĩa (chú

tới điều kiện trước)

- Ví dụ 1 (minh hoạ cấu trúc while):

tính n!;

- Ví dụ 2: tính tổng 12

1

n

i

i

, với i = 1

n;

- Ví dụ 3: kiểm tra số nguyên tố

- Cấu trúc lặp do while: cú pháp, sơ

đồ khối của cấu trúc, ý nghĩa (phân

biệt điều kiện lặp với while)

- Đọc các phần

tương ứng trong

chương 5 của [2],

chương 3 của [4].

- Làm bài tập về

nhà

- Đọc các phần

tương ứng trong

chương 5 của [2],

chương 3 của [3].

- Làm thêm các bài

tập (tham khảo)

- C1: tính cos(x)

theo công thức

khai triển Taylor

- C2: Tính tổng

1/(i!) với i: 1 n

- C3: Tìm n số

nguyên tố đầu tiên

- C4: Nhập n số

thực, tìm và in giá

trị lớn nhất, nhỏ

nhất

- C5: Viết chương

trình nhập dãy các

số nguyên dương

từ bàn phím, cho

Page 15: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

15

- Ví dụ 1 (minh hoạ cấu trúc do

while): Viết chương trình nhập dãy

các số nguyên dương từ bàn phím,

cho tới khi nhập số âm thì kết thúc

nhập, in giá trị lớn nhất;

tới khi nhập số âm

thì kết thúc nhập,

tìm giá trị lớn nhất

và số phần tử bằng

giá trị lớn nhất đó

- C6: Viết chương

trình chọn ngẫu

nhiên một kí tự c

nào đó, cho phép

lặp nhập một kí tự

từ bàn phím, nếu

trùng với c thì

thông báo chọn

đúng và kết thúc

Bài tập

Thảo

luận

Thực

hành, thí

nghiệm...

Tự học,

tự nghiên

cứu

Tuần 8: Các cấu trúc điều khiển (tiếp theo)

Hình

thức tổ

chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu cầu sinh viên

chuẩn bị

Gh

i

ch

ú

thuyết

Theo

bố trí

của P2

- Cấu trúc lặp for: cú pháp, sơ đồ

khối của cấu trúc, ý nghĩa (chú tới

trường hợp các biểu thức rỗng,

nhiều biều thức cách nhau bởi dấu

phẩy)

- Ví dụ 1: In các kí tự từ A - Z

- Ví dụ 2: Giải bài toán vui trăm

Đọc các phần tương

ứng trong chương 5

của [2], chương 3 của

[4].

- Làm thêm bài tập

(tham khảo)

- C7: Viết chương in

Page 16: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

16

trâu trăm cỏ

- Ví dụ 3: Nhập số n, in các số

hoàn chỉnh <= n

- Câu lệnh break, continue, kết

thúc sớm vòng lặp

Bài tập về nhà:

- Bài 4 - Nhập dãy có n số thực,

hãy xác định trật tự của dãy đó

(tăng, giảm, điều hay không có thứ

tự)

- Bài 5 - Nhập n, in n số fibonaxi

đầu tiên

- Bài 6 - Nhập số n, in các số

nguyên tố 2..n

- Bài 7 - Viết chương trình nhập

dãy các số nguyên dương từ bàn

phím, cho tới khi nhập số âm thì

kết thúc nhập, tìm giá trị lớn nhất

và số phần tử bằng giá trị lớn

bảng cửu chương ra

màn hình

- C8: Tính đại lượng

S=

nn 2)1(2..42

với n cho trước

Bài tập

Thảo

luận

Thực

hành, thí

nghiệm...

Tự học,

tự

nghiên

cứu

Tuần 9: Bài tập (3 tiết)

Hình

thức tổ

chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu cầu

sinh viên

chuẩn bị

G

hi

ch

ú

Page 17: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

17

thuyết

Bài tập Theo

bố trí

của P2

- Bài 8 -Viết chương trình nhập số n, tìm

và in các số nguyên tố thuộc 2..n

- Bài 9: Kiểm tra số fibonaxi

- Bài 10: Kiểm tra số hoàn chỉnh

- Bài 11: Tính sin(x) theo công thức khai

triển Taylor với độ chính xác cho trước

- Bài 12: Nhập dãy có n số thực, hãy xác

định trật tự của dãy đó (tăng, giảm, điều

hay không có thứ tự)

- Bài 13: Nhập n, in n số fibonaxi đầu

tiên

- Bài 14: Nhập số n, in các số nguyên tố

2..n

- Bài 15: Viết chương trình nhập dãy các

số nguyên dương từ bàn phím, cho tới

khi nhập số âm thì kết thúc nhập, tìm

giá trị lớn nhất và số phần tử bằng giá

trị lớn

Chuẩn bị

trước các

bài tập về

nhà và bài

tập tham

khảo

Thảo

luận

Thực

hành, thí

nghiệm...

Tự học,

tự

nghiên

cứu

Tuần 10: Mảng, con trỏ và xâu ký tự

Hình

thức tổ

chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu cầu sinh viên

chuẩn bị

Ghi

chú

Lý thuyết Theo bố 1. Mảng 1 chiều - Đọc chương 2

Page 18: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

18

trí của

P2

- Khái niệm, lệnh khai báo mảng 1

chiều, truy xuất các phần tử, lưu ý

trường hợp truy xuất vượt chỉ số,

bố trí các phần tử trong bộ nhớ, giá

trị khởi đầu các phần tử

- Ví dụ 1: Nhập mảng có n phần tử

kiểu nguyên, in các phần tử của

mảng

- Ví dụ 2: Nhập 2 mảng có n phần

tử kiểu nguyên, tính và in mảng

tổng

2. Mảng 2 chiều

- Khái niệm, lệnh khai báo mảng 1

chiều, truy xuất các phần tử, lưu ý

trường hợp truy xuất vượt chỉ số

dòng, cột, sắp xếp các phần tử trong

bộ nhớ, liên hệ giữa chỉ số dòng,

cột với số thứ tự

- Ví dụ 1: Nhập mảng có n dòng, m

cột các phần tử kiểu nguyên, in các

phần tử của mảng ra màn hình

- Ví dụ 2: Nhập 2 mảng A,B có n,

m cột các phần tử kiểu nguyên,

tính và in mảng C=A+B

- Ví dụ 3: Nhập 2 vector có n phần

tử kiểu nguyên, kiểm tra 2 vector đó

có vuông góc với nhau hay không

Bài tập về nhà:

- Bài 16: Sắp xếp mảng 1 chiều

bằng phương pháp chọn (đổi chỗ

- nổi bọt)

trong [2], chương 5

trong [4]

- Làm bài tập về

nhà

- Làm thêm các

bài tập (tham

khảo)

- C9: Nhập mảng

có n phần tử kiểu

nguyên theo trật tự

tăng dần, in các

phần tử khác nhau

của mảng

- C10: Nhập 2

mảng theo trật tự

tăng dần, trộn 2

mảng để được có

thứ tự tăng dần

- C11: Nhập mảng

có n phần tử kiểu

nguyên, in các

phần tử khác nhau

của mảng

- C12: Tìm kiếm

bằng phương pháp

chia đôi trên mảng

có thứ tự

Bài tập Chữa các bài tập: Bài 9, Bài 10, Bài

11

Thảo

Page 19: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

19

luận

Thực

hành, thí

nghiệm...

Tự học,

tự nghiên

cứu

Tuần 11: Mảng, con trỏ và xâu ký tự (tiếp theo)

Hình

thức tổ

chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu cầu

sinh viên

chuẩn bị

Ghi

chú

Lý thuyết

Theo bố

trí của

P2

Mảng, con trỏ và xâu ký tự (2)

- Giới thiệu mảng nhiều chiều

- Con trỏ và các phép toán trên con trỏ:

Khai báo con trỏ, phép gán con trỏ, truy

xuất giá trị qua con trỏ, số học địa chỉ

- Cấp phát vùng nhớ cho con trỏ (giới

thiệu qua về cấp phát động new, và giải

phóng vùng nhớ delete)

- Liên hệ giữa con trỏ và mảng

- Ví dụ: Cấp phát động mảng 1 chiều,

nhập và in mảng đó bằng các dùng con

trỏ

Mảng, con trỏ và xâu ký tự (3)

- Xâu kí tự: Khái niệm, khai báo xâu kí

tự

- Giới thiệu một số hàm làm việc với xâu

kí tự: nhập, in, so sánh, sao chép, tìm

kiếm, chuyển đổi chữ hoa/ chữ thường

- Ví dụ: Nhập mảng các xâu kí tự dài

không quá 30, sắp xếp theo thứ tự tăng, in

mảng sau khi sắp xếp.

Bài tập:

- Đọc

chương 6

trong [2],

chương 5

trong [4]

- Làm bài tập

về nhà

- Làm bài

tập tham

khảo

- C13: Cho

ma trận m

dòng, n cột

a) Tìm phần

tử lớn nhất

mỗi cột và

đặt chúng

vào dòng

cuối cùng.

b) Tìm phần

tử nhỏ nhất

mỗi dòng và

đặt chúng

Page 20: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

20

- Bài 17: Nhập 2 mảng A(n,m), B(m,n)

phần tử kiểu số thực, tính và in mảng

C=A*B

- Bài 18: Nhập 2 mảng A(n,m), B(m,n)

phần tử kiểu số thực, kiểm tra A có là

hoán vị của B hay không

- Bài 19: Nhập A(n,n) với n không giới

hạn trước, kiểm tra A có là ma trận

đơn vị không?

- Bài 20: Xây dụng ma trận A(n,m), sao

cho các phần tử có giá trị theo dạng

xoắn ốc (n, m không giới hạn trước)

- Bài 21: Nhập xâu họ tên (không quá 40

kí tự), chuẩn hoá xâu đó (kí tự đầu từ

viết hoa, các kí tự khác viết thường,

các từ cách nhau 1 dấu cách)

- Bài 22: Nhập 3 xâu s1, s2, s3 (không

quá 40 kí tự), thay xâu s2 bằng s3

trong s1

- Bài 19: Nhập xâu kí tự. Đưa xâu đó về

dạng chuẩn

- Bài 23: Nhập xâu kí tự và tìm từ dài

nhất trong xâu.

vào cột đầu

tiên.

c) Sắp xếp

dòng thứ 2

theo thứ tự

giảm dần.

d) Sắp xếp

cột 4 theo

thứ tự tăng

dần.

- Tra cứu

một số hàm

thư viện

string

- C14: Viết

chương trình

đổi 1 số

trong hệ thập

phân sang hệ

nhị phân.

Bài tập Chữa các bài tập: Bài 13, Bài 14, Bài 15,

Bài 16

Thảo

luận

Thực

hành, thí

nghiệm...

Tự học,

tự nghiên

cứu

Tuần 12: Giới thiệu về hàm

Page 21: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

21

Hình

thức tổ

chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu cầu sinh

viên chuẩn bị

G

hi

ch

ú

Lý thuyết

Theo bố

trí của

P2

Cơ bản về hàm (1)

- Khái niệm hàm, ý nghĩa ưu điểm của

việc sử dụng hàm

- Nguyên mẫu hàm, định nghĩa hàm, giá

trị trả về của hàm

- Lời gọi hàm

- Ví dụ 1: viết hàm kiểm tra số nguyên

tố, sử dụng hàm đó để in n số nguyên tố

đầu tiên

- Truyền tham số: tham trị, con trỏ

Đọc các

chương 4

trong [4],

chương 6

trong [2].

Bài tập

Thảo

luận

Thực

hành, thí

nghiệm...

Tự học,

tự nghiên

cứu

Tuần 13: Giới thiệu về hàm (tiếp)

Hình

thức tổ

chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu cầu

sinh viên

chuẩn bị

Ghi

chú

Lý thuyết

Theo

bố trí

của

P2

Cơ bản về hàm (2)

- Các loại biến, phạm vi của biến

- Ví dụ 2: viết hàm nhập mảng 1 chiều, hàm

in mảng, hàm tích vô hướng 2 vector; sử

dụng các hàm trên để kiểm tra 2 vector có

vuông góc với nhau hay không?

- Hàm đệ quy

Đọc các

chương 4

trong [4],

chương 6

trong [2].

Page 22: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

22

- Giới thiệu về hàm inline

- Đối của hàm main

- Hàm với đối số bất định

- Ví dụ 3: Tìm ước số chung lớn nhất bằng

hàm đệ quy

- Ví dụ 4: Xây dựng hàm tìm min của dãy n

số (đối số chưa xác định)

- B19: Xây dựng hàm tìm kiếm phần tử

trong mảng có thứ tự bằng phương pháp chia

đôi

Bài tập:

- Bài 24: Viết hàm tính ước số chung lớn

nhất của 2 số tự nhiên a, b.

- Bài 25: Viết hàm xác định một số tự nhiên

có phải nguyên tố hay không.

- Bài 26: Viết hàm nhập mảng, in mảng,

hàm sắp xếp mảng bằng phương pháp chia

đôi; hàm main sử dụng các hàm trên.

- Bài 27: Viết hàm nhập ma trận, in ma trận,

hàm nhân 2 ma trận, hàm kiểm tra ma trận

đơn vị; hàm main sử dụng các hàm trên để

nhập và kiểm tra 2 ma trận có là nghịch đảo

của nhau hay không.

Bài tập Chữa các bài tập: Bài 24, Bài 25

Thảo

luận

Thực

hành, thí

nghiệm…

Tự học,

tự nghiên

cứu

Tuần 14: Cấu trúc dữ liệu trừu tượng

Hình

thức tổ

Thời

gian,

Nội dung chính Yêu cầu

sinh viên

Ghi

chú

Page 23: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

23

chức

dạy học

địa

điểm

chuẩn bị

Lý thuyết

Theo bố

trí của

P2

Cấu trúc dữ liệu

- Khái niệm trừu tượng hoá dữ liệu

- Dữ liệu kiểu struct (khái niệm, khai báo,

cách sử dụng)

- Ví dụ 1: Xây dựng cấu trúc phân số (PS1)

gồm: Tử số, mẫu số và các hàm: nhập, in,

tối giản

- Ví dụ 2: Xây dựng cấu trúc Sinh viên

Đọc các

chương

2, 6 trong

[2]

Bài tập

Thảo

luận

Thực

hành, thí

nghiệm…

Tự học,

tự nghiên

cứu

Tuần 15: Làm việc với tệp, Ôn tập

Hình

thức tổ

chức

dạy học

Thời

gian,

địa

điểm

Nội dung chính Yêu cầu

sinh viên

chuẩn bị

Ghi

chú

Lý thuyết

Theo bố

trí của

P2

Làm việc với tệp

- Khái niệm kiểu FILE, các mode làm việc

(nhị phân, văn bản)

- Mở /đóng tệp, định vị con trỏ

- Đọc/ghi tệp (tuần tự, ngẫy nhiên)

- Ví dụ 1: Nhập 2 ma trận A(n,m), B(m,n)

từ bàn phím, tính C= A*B rồi ghi A,B,C

vào tệp (theo dạng văn bản);

- Ví dụ 2: Giả sử có tệp các số nguyên

(dạng text) ghi các phần tử của mảng theo

dạng: dòng 1 ghi số phần tử, dòng thứ 2 ghi

- Đọc các

chương 2

trong [4],

chương 10

trong [2].

- Làm bài

tập về nhà

Page 24: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

24

các phần từ cách nhau bởi dấu trống; viết

chương trình đọc các giá trị đó vào mảng,

sắp xếp tăng dần rồi ghi vào cuối của tệp

đó.

Bài tập về nhà:

- Bài 28: Nhập tên, điểm của học sinh hai

lớp vào hai tệp văn bản, mỗi học sinh ghi

trên một dòng của tệp

Ôn tập

- Ôn tập các nội dung lý thuyết

- Chữa các bài tập

- thảo luận các hướng giải bài toán, các vấn

đề gặp phải khi lập trình.

Bài tập

Thảo

luận

Thực

hành, thí

nghiệm...

Tự học,

tự nghiên

cứu

8. Chính sách đối với học phần và các yêu cầu khác của giáo viên

- Lên lớp nghe giảng, tham gia thảo luận, chuẩn bị tốt phần tự học, bài

tập.

- Sinh viên phải chuẩn bị các nội dung theo yêu cầu trong đề cương môn

học trước mỗi buổi học

- Tham gia đầy đủ các buổi học theo qui định của Học viện

- Mỗi sinh viên lên chữa bài tập không ít hơn 1 lần

- Bài tập và bài kiểm tra đạt không dưới 5/10

- Các bài tập được giao nếu phát hiện sao chép sẽ nhận điểm 0

- Các bài tập phải nộp đúng hạn, có thể làm lại nếu muốn điểm cao hơn.

9. Phƣơng pháp, hình thức kiểm tra - đánh giá kết quả học tập học phần

Page 25: ĐỀ CƢƠNG CHI TIẾT HỌC PH - fit.mta.edu.vnfit.mta.edu.vn/files/FileMonHoc/20121023842.pdfLàm bài tập trên lớp: 15 ... hiểu biết cơ bản về ngành CNTT, kiến

25

- Viết đúng, sử dụng biến hợp lý, chương trình viết dạng module:

10 điểm

- Viết đúng, viết chương trình ở dạng module: 7-9

điểm

- Viết đúng, chạy được chương trình trong một số điều kiện: 5-6

điểm

- Làm sai, không làm được: 1 – 4

điểm

9.1. Điểm chuyên cần: 10%

- Tham gia học tập trên lớp (đi học đầy đủ, chuẩn bị bài tốt và tích cực

thảo luận, …)

9.2. Điểm thường xuyên: 20%

- Biết cách dùng ngôn ngữ C để giải các bài toán

- Giải được một số bài tập điển hình;

- Kiểm tra đánh giá giữa kỳ và các bài tập của từng nội dung học.

9.3. Thi kết thúc học phần:70%

- Hiểu và vận dụng thành thạo các kỹ năng lập trình, cú pháp của ngôn

ngữ lập trình;

- Đủ khả năng giải quyết được bất cứ bài tập lập trình nào;

-

Chủ nhiệm Khoa

(Ký và ghi rõ họ tên)

Chủ nhiệm Bộ môn

(Ký và ghi rõ họ tên)

Giảng viên biên soạn

(Ký và ghi rõ họ tên)

-