CƠ SỞ LẬP TRÌNH 1
Khoa Hệ thống thông tin quản lý
Hà Nội – 2013
Giới thiệu môn học
Số tín chỉ: 3
Thời gian:
Lý thuyết: 60%
Thực hành, thảo luận: 40%
Tự học: 200%
Đánh giá
Kiểm tra giữa kì: 30%
Thực hành trên máy (15%)
Bài tập lớn (15%)
Chuyên cần: 10%
Thi cuối kì: 60%
30/06/2014 Giới thiệu môn học 2/9
Giới thiệu môn học
Mục tiêu của học phần
Về lý thuyết: Trang bị những khá i niệm cơ bản về
lập trình, hình thành và nâng cao tư duy thuật
toán cho sinh viên.
Về kĩ năng: Trang bị những kĩ năng lập trình cơ
bản trên ngôn ngữ lập trình C.
Tài liệu tham khảo
Phạm Văn Ất (2009), Giáo trình kỹ thuật lập trình
C căn bản và nâng cao, NXB Hồng Đức
Quách Tuấn Ngọc (1998), Ngôn ngữ lập trình C,
NXB Giáo dục
Quách Tuấn Ngọc (2003), Ngôn ngữ lập trình
C++, NXB Giáo dục
Cách xây dựng hàm
Tha m số và truyền tham số cho hàm
Hàm đệ quy
Một số hàm thông dụng
30/06/2014 Giới thiệu môn học 6/9
Nội dung
Chương 5: Kiểu dữ liệu mảng
Mảng một chiều
Mảng nhiều chiều
Chương 6: Kiểu con trỏ
Địa chỉ và con trỏ
Khai báo, các phép toá n trên con trỏ
Con trỏ và mảng một chiều, mảng nhiều chiều
Mảng các con trỏ
Con trỏ hàm
Cấp phát bộ nhớ động và danh sách liên kết
30/06/2014 Giới thiệu môn học 7/9
Nội dung
Chương 7: Xâu kí tự
Khai báo và các thao tác với xâu kí tự
Một số hàm xử lí xâu kí tự
Mảng xâu kí tự
Chương 8: Kiểu dữ liệu cấu trúc
Khai báo, truy cập đến các thành phần cấu trúc
Mảng cấu trúc
Con trỏ của cấu trúc
Chương 9: Kiểu dữ liệu tệp
Khái niệm về tệp, các bước xử lý
Tệp nhị phân
Tệp văn bản
7
Thực hành chương 4
15
Thực hành chương 8+9
8
Chương 5
16
Kiểm tra
30/06/2014 Giới thiệu môn học 9/9
Chương 1
CÁC KHÁI NIỆM CƠ BẢN
VỀ LẬP TRÌNH
Khoa Hệ thống thông tin quản lý
Hà Nội – 2013
Nội dung
30/06/2014 Chương 1-Các khái niệm cơ bản về lập trình
Các khái niệm cơ bản
1
Các bước xây dựng chương trình
2
Thuật toán và chương trình
3
Giới thiệu ngôn ngữ lập trình C
4
2/27
1. Các khái niệm cơ bản
Lập trình (programming)
Nghệ thuật cài đặt một hoặc nhiều thuật toán trừu
tượng có liên quan với nhau bằng một ngôn ngữ
lập trình để tạo ra một chương trình máy tính.
thể bằng 0) các dữ liệu ban đầu
Output (Kết quả):Thuật toán phải cho ra được kết
quả
Tính xác định: Các thao tác phải xác định, không
nhập nhằng, lẫn lộn, tuỳ tiện.
Tính khả thi: thuật toán phải có khả năng thực hiện
được trong một thời gian hữu hạn
Tính kết thúc (tính dừng): thuật toán phải dừng sau
một số hữu hạn bước
Tính phổ dụng: có thể áp dụng cho một lớp các bài
toán có đầu vào tương tự nhau.
Chương 1-Các khái niệm cơ bản về lập trình30/06/2014 5/27
2. Các bước xây dựng chương trình
30/06/2014 Chương 1-Các khái niệm cơ bản về lập trình
Xác định vấn đề
- bài toán
Lựa chọn
phương pháp giải
Cài đặt
chương trình
Hiệu chỉnh
chương trình
Thực hiện
chương trình
Lỗi cú pháp
Lỗi ngữ nghĩa
Biểu diễn bằng:
• Ngôn ngữ tự nhiên
• Lưu đồ - Sơ đồ khối
• Ngôn ngữ lập trình
Khối lựa chọn
Tùy điều kiện sẽ rẽ nhánh.
Khối thao tác
Ghi thao tác cần thực hiện.
Đường đi
Chỉ hướng thao tác tiếp theo.
9/27
Sử dụng sơ đồ khối
30/06/2014 Chương 1-Các khái niệm cơ bản về lập trình
Bắt đầu
Kết
thúc
Nhập a, b
UCLN = a
a=b
Xuất
UCLN
a > b
b = b - aa = a - b
Đúng
Đúng
Sai
Sai
10/27
Cài đặt thuật toán ngôn ngữ lập trình
30/06/2014 Chương 1-Các khái niệm cơ bản về lập trình
#include <stdio.h>
#include <conio.h>
int a, b;
void main()
Ví dụ về thuật toán (tt)
Sơ đồ khối
Đúng
Bắt đầu
N = 1 ?
Gán i = 2
i>sqrt(N)
?
Gán i = i + 1
N chia hết
cho i ?
N < 4 ?
Đúng
Sai
Sai
Đúng
Sai
Đúng
Sai
Nhập N
N là
nguyên tố
Kết thúc
N không là
nguyên tố
30/06/2014 Chương 1-Các khái niệm cơ bản về lập trình 13/27
Ví dụ về thuật toán (tt)
Ý tưởng:
Lần lượt so sánh các giá trị của dãy với k:
Nếu có giá trị a
, a
2
,…, a
N
và k
Thông báo không
tìm thấy
Thông báo tìm
thấy, đưa ra i
Kết thúc
Đúng
Sai
Đúng
Sai
30/06/2014 Chương 1-Các khái niệm cơ bản về lập trình 15/27