1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Nhập môn lập trình: Bài 1 - TS. Ngô Hữu Dũng

47 35 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nhập môn lập trình tổng quan
Tác giả Ts. Ngô Hữu Dũng
Trường học Trường Đại Học Công Nghiệp Thành Phố Hồ Chí Minh
Chuyên ngành Nhập môn lập trình
Thể loại Bài giảng
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 47
Dung lượng 721,97 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Nhập môn lập trình: Bài 1 do TS. Ngô Hữu Dũng biên soạn cung cấp cho người học các kiến thức: Tổng quan lập trình, các thành phần cơ bản, nhập xuất dữ liệu và các thư viện, các câu lệnh có cấu trúc, lệnh lựa chọn - rẽ nhánh, thuật toán, vòng lặp, hàm – chương trình con, kiểu dữ liệu mảng, chuỗi ký tự,...

Trang 2

Bài 1 – Giới thiệu

Email ngohuudung@iuh.edu.vn

Trang 4

Tài liệu

Brian W Kernighan and Dennis M Ritchie The C

Programming Language (Second Edition) Prentice-Hall

Englewood Cliffs, New Jersey, 1988.

 Slide, bài giảng

 Bài tập thực hành

 Bản dịch tiếng Việt: Giáo trình Ngôn ngữ lập trình C

 Tham khảo thêm

Phạm Văn Ất Kỹ thuật lập trình C NXB Khoa học và Kỹ thuật,

1995

Randal E.Bryant and David R.O’Hallaron Computer’s Perspective,

2001

Bjarne Stroustrup The C++ Programming Language, AT&T Labs

Murray Hill, New Jersey Addison-Wesley, 1997.

Andy Oram and Greg Wilson, Beautiful Code, 2007

 cplusplus.com

Trang 5

Lịch trình

thuyết

Thực hành

Kiểm tra Tự học

2 Các thành phần cơ bản của Ngôn ngữ C 2 4

Nhập xuất dữ liệu và các thư viện 4

Trang 6

Kiểm tra đánh giá

Trang 7

Thảo luận

 What?

 Why?

 How?

Trang 8

Một số gợi ý

 Bám sát các nội dung thực hành (quan trọng!)

 Đọc tài liệu, slide trước khi đến lớp

 In tài liệu, slide, bài tập

 Tự đặt câu hỏi và trả lời

 Tự làm bài tập ở nhà

 Tóm tắt các nội dung chủ yếu

 Vắng học?

Trang 10

Các bước lập trình

Xác định rõ yêu cầu của bài toán

 Lựa chọn các biến và cấu trúc dữ liệu

Xây dựng giải thuật (cách giải) cho bài toán

Xây dựng trình tự để giải bài toán

Cài đặt (viết) chương trình và biên dịch

Chạy thử và sửa lỗi

 Hoàn thiện và tối ưu hóa

Trang 11

Ví dụ về các bước lập trình

Bài toán: Nhập, tính toán, xuất

 Đề bài: Viết chương trình nhập vào hai số nguyên, xuất ramàn hình tổng của hai số nguyên đó

 Các bước chính để giải bài toán:

Xác định rõ yêu cầu của bài toán

 Lựa chọn các biến và cấu trúc dữ liệu

Xây dựng giải thuật (cách giải) cho bài toán

Xây dựng trình tự để giải bài toán

Cài đặt (viết) và biên dịch chương trình

Chạy thử và sửa lỗi

 Hoàn thiện và tối ưu hóa

Trang 12

Các bước giải bài toán

 Xác định yêu cầu,

 Nhập 2 số nguyên , tính tổng, xuất ra tổng.

 Lựa chọn dữ liệu,

 Cần lưu hai số nguyên

 Cần lưu tổng hai số nguyên

 Xây dựng thuật toán và trình tự,

 Khai báo các biến để lưu trữ, bao nhiêu biến? Kiểu gì?

 Nhập vào 2 số nguyên

 Tính tổng

 Xuất kết quả

 Viết và biên dịch chương trình,

 Chạy thử và sửa lỗi

Trang 14

Khai báo thư viện

2. // Chứa các hàm nhập xuất cơ bản

3. // stdio : st an d ard C i nput o utput

5. //Chương trình chính

6. int main()

7. {

11. }

Trang 15

Khai báo biến

1 #include <stdio.h> // Thư viện

2 //Chương trình chính

3 int main()

4 {

5 // Khai báo biến

6 int x; // int: int eger – số nguyên

7 int y; // Cú pháp: <kiểu> <tên biến> ;

8 int tong; // Hoặc: int x, y, tong;

9 // Nội dung chương trình

11 }

Trang 17

Lưu đồ thuật toán và Mã giả

Dùng để biểu diễn, mô tả giải thuật

Print tong

Trang 18

Nhập giá trị cho biến

1 #include <stdio.h> // Thư viện

2 int main() //Chương trình chính

Trang 19

Tính toán – Xử lý

1 #include <stdio.h> //Khai báo thư viện

Trang 20

Xuất ra màn hình

1 #include <stdio.h> //Khai báo thư viện

Trang 21

Chương trình tính tổng tham khảo

1 #include <stdio.h> //Khai báo thư viện

Trang 23

Nhận xét – Thư viện

 Thư viện

 Chứa các hàm đã được định nghĩa sẵn

 Khai báo

#include <tên thư viện>

#include <stdio.h> // Nhập xuất

#include <stdlib.h> // Thư viện chuẩn

#include <math.h> // Toán học

#include <string.h> // Chuỗi ký tự

#include <ctype.h> // Ký tự

#include <time.h> // Thời gian

Trang 25

Nhận xét – Biến (variable)

 Biến

 Lưu trữ dữ liệu cần thiết

 Giá trị có thể thay đổi

 Có kiểu dữ liệu cụ thể (nguyên, thực, ký tự…)

 Khai báo

<Kiểu> <tên_biến_1>, <tên_biến_2>;

int x, y, tong, hieu, tich; // Số nguyên

Trang 26

Nhận xét – Nhập dữ liệu

 Nhập

 Nhập từ bàn phím giá trị cho biến

 Nhập đúng kiểu dữ liệu tương ứng với kiểu của biến

scanf( "<định dạng>" , &<tên biến>);

scanf( "%d" , &x); // d: d ecimal

scanf( "%i" , &y); // i: i ntegral

scanf( "%f" , &thuong); // f: f loat

scanf( "%c" , &kyTu); // c: c har

scanf( "%s" , &chuoi); // s: s tring

gets(<tên biến>);

Trang 28

Nhận xét – Xuất

 Xuất ra màn hình dòng chữ, giá trị của biến

printf("<định dạng>", <biến 1>,<biến 2>);

printf( "Tong: %d \n" , tong);

printf( "Thuong: %f \n" , thuong);

printf( "Ky tu: %c \n" , kyTu);

printf( "Chuoi: %s \n" , chuoi);

Trang 29

Nhận xét – Mã giả

 Dùng để biểu diễn thuật toán

 Không nhất thiết chính xác về cú pháp

 Không nhất thiết tuân theo một ngôn ngữ cụ thể

 Ví dụ một số từ khoá: READ, WRITE, IF, ELSE, ENDIF, FOR, ENDFOR, WHILE, ENDWHILE.

 Mỗi lệnh hoặc mỗi bước chỉ nên viết trên một dòng

 Dùng thụt đầu dòng cho các lệnh có cấu trúc

 Kết thúc lệnh bằng ENDIF, ENDFOR…

Trang 30

Nhận xét – Lưu đồ thuật toán

 Biểu diễn thuật toán bằng sơ đồ khối

Terminator Bắt đầu hoặc kết thúc chương

trình Data Nhập hoặc xuất dữ liệu Process Xử lý, thực hiện một thao tác

Decision Quyết định hướng xử lý theo

điều kiện Flow direction Hướng đi của luồng xử lý

Trang 32

6 float DT, CV; // Diện tích, chu vi

7 printf( "Nhap ban kinh hinh tron: " );

8 scanf( "%f" , &r);

9 DT = PI * r * r;

10 CV = 2 * PI * r;

11 printf( "Dien tich hinh tron: %.2f\n" , DT);

12 printf( "Chu vi hinh tron: %.2f" , CV);

13 return 0;

14 }

Trang 34

Công cụ lập trình

 C-Free, Dev-C, CodeBlocks, Visual Studio…

Trang 35

http://borlandc.org/download-turbo-c-3-0-for- Eclipse: http://www.eclipse.org/ide/

 Netbeans: https://netbeans.org/downloads/index.html

 Ideone: Biên dịch online, hỗ trợ nhiều ngôn ngữ lập trình

https://ideone.com/

Trang 36

Giảng viên: Instructor

Trang 37

Tự tìm hiểu nội dung môn học

 Thuật toán? Algorithm

 Cách giải bài toán

Trang 38

Bài tập 1.1 – Các thao tác lập trình

Trang 39

 Lưu file nguồn: File  Save, hoặc File  Save

as…, hoặc kích Biểu tượng 3

 Gõ chương trình Hello world vào khu vực số 4

 Biên dịch, chạy chương trình, dừng chương trình ở khu vực số 5

 Kiểm tra và sửa lỗi biên dịch ở khu vực số 6

Trang 40

Bài tập 1.2 – Tính toán

 Viết chương trình nhập vào hai số nguyên, xuất ra màn hình tổng, hiệu, tích, và thương của của số nguyên đó

 Gợi ý:

#include <stdio.h> /*Khai báo thư viện*/

int main() //Chương trình chính

{

// Khai báo biến // Nhập

// Biểu thức, tính toán // Xuất

return 0; //Kết thúc }

Trang 41

Tính tổng, hiệu, tích, thương (tham khảo 1)

1 #include <stdio.h> /*Khai báo thư viện*/

2 int main() //Chương trình chính

3 {

4 int x, y, tong, hieu, tich;

5 float thuong; //Khai báo

6 printf( "Nhap so nguyen x: " );

13 thuong = (float)x / y; //Biểu thức tính thương

14 printf( "Tong la %d \n" , tong); // Xuất tổng

15 printf( "Hieu la %d \n" , hieu); // Xuất hiệu

16 printf( "Tich la %d \n" , tich); // Xuất tích

17 printf( "Thuong la %f \n" , thuong); // Xuất thương

Trang 42

Tính tổng, hiệu, tích, thương (tham khảo 2)

1 #include <stdio.h> //Khai báo thư viện

3 {

5 float thuong;

6 printf( "Nhap vao hai so nguyen: " );

7 scanf( "%d%d" , &x, &y); //Nhập x, y

10 printf( "%d + %d = %d \n" , x, y, tong); // Xuất

Trang 43

Bài tập 1.3 – Hình chữ nhật

Viết chương trình nhập vào hai cạnh của hình chữ nhật, xuất

ra màn hình diện tích, chu vi và chiều dài đường chéo của hình chữ nhật

Trang 44

6 float c; // Đường chéo

7 float dienTich, chuVi;

8 printf( "Nhap hai canh: " );

9 scanf( "%f%f" , &a, &b);

13 printf( "Dien tich: %f\n" , dienTich);

14 printf( "Chu vi: %f\n" , chuVi);

15 printf( "Duong cheo: %f\n" , c);

16 return 0;

Trang 45

Bài tập 1.4 – Khoảng cách

 Đề bài: Viết chương trình nhập vào tọa độ của hai điểmA(xA, yA) và B(xB, yB), xuất ra màn hình khoảng cáchgiữa hai điểm

Trang 46

Khoảng cách (tham khảo)

1 #include <stdio.h>

2 #include <math.h>

3 int main()

4 {

5 float xA, yA; // A(xA, yA)

6 float xB, yB; // B(xB, yB)

7 float KC; // Khoảng cách

8 printf( "Nhap A(xA, yA): " );

9 scanf( "%f%f" , &xA, &yA);

10 printf( "Nhap B(xB, yB): " );

11 scanf( "%f%f" , &xB, &yB);

12 KC = sqrt(pow(xA-xB,2) + pow(yA-yB,2));

13 printf( "Khoang cach: %f\n" , KC);

14 return 0;

Trang 47

Bài tập 1.5 – Chữ số

 Viết chương trình nhập vào một số nguyên có hai chữ số, xuất ra màn hình chữ số hàng chục và chữ số hàng đơn vị của số nguyên ấy

Ngày đăng: 08/05/2021, 14:11

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm