intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Tin học đại cương: Chương 4 - Trần Quang Hải Bằng (ĐH giao thông Vận tải)

Chia sẻ: Sơn Tùng | Ngày: | Loại File: PDF | Số trang:39

100
lượt xem
4
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Tin học đại cương - Chương 4: Lập trình cho máy tính" cung cấp cho người học các kiến thức: Khái niệm, giới thiệu ngôn ngữ lập trình C, các khái niệm cơ bản trong C, các lệnh nhập/xuất dữ liệu, cấu trúc điều khiển rẽ nhánh, cấu trúc điều khiển lặp. Mời các bạn cùng tham khảo.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Tin học đại cương: Chương 4 - Trần Quang Hải Bằng (ĐH giao thông Vận tải)

  1. TIN HỌC ðẠI CƯƠNG Chương 4: Lập trình cho máy tính bangtqh@utc2.edu.vn Nội dung q Khái niệm. q Giới thiệu ngôn ngữ lập trình C. q Các khái niệm cơ bản trong C. q Các lệnh nhập/xuất dữ liệu. q Cấu trúc điều khiển rẽ nhánh. q Cấu trúc điều khiển lặp. q Bài tập. bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 2
  2. Khái niệm lập trình cho máy tính bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 3 Giới thiệu ngôn ngữ lập trình C q Ngôn ngữ C ra ñời năm 1972 q Phát triển thành C++ vào năm 1983 q Là ngôn ngữ ñược sử dụng rất phổ biến q Có nhiều trình biên dịch C khác nhau – Turbo C, Borland C – ANSI C, IBM C, ISO C – GCC – …v.v. q Chúng ta sẽ sử dụng: Borland C 5.02 (bộ cài 85MB) bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 4
  3. IDE Borland C++ 5.02 q Chạy file Setup.exe trong thư mục Bc502 q Một số phím soạn thảo Phím Chức năng Enter Xuống dòng Insert Chuyển đổi chế ñộ chèn/đè Delete Xóa kí tự ngay sau vị trí con trỏ Back space Xóa kí tự ngay trước vị trí con trỏ Ctrl + Y Xóa dòng kí tự chứa con trỏ Ctrl + Q + Y Xóa các kí tự từ vị trí con trỏ ñến cuối dòng bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 5 IDE Borland C++ 5.02 Một số phím soạn thảo (tiếp theo) Phím Chức năng Ctrl + K + C Chép khối tới vị trí mới của con trỏ Ctrl + K + V Chuyển khối tới vị trí mới của con trỏ Ctrl + K + Y Xóa cả khối Ctrl + K + W Ghi một khối vào một tệp trên đĩa Ctrl + K + R Đọc một khối từ một tệp trên đĩa Ctrl + Q + B Dịch chuyển con trỏ về ñầu khối Ctrl + Q + K Dịch chuyển con trỏ về cuối khối Ctrl + Q + F Tìm kiếm một cụm từ Ctrl + Q + A Tìm kiếm cụm từ và sau ñó thay thế bằng cụm từ khác Ctrl + Q + L Lặp lại Ctrl + Q + F hoặc Ctrl + Q + A cuối cùng bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 6
  4. Chương trình “Hello world” chỉ thị tiền xử lý Hàm chính của chương trình Dấu bắt đầu và kết thúc của định nghĩa hàm Kết quả thu ñược khi biên dịch và chạy chương trình trên bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 7 Từ khóa (Key word) q Là các từ dành riêng của ngôn ngữ C q Từ khóa phải được sử dụng đúng cú pháp q Một số từ khóa thông dụng auto break case char continue default do double else extern float for goto if int long register return short sizeof static struct switch typedef union unsigned void volatile while Trong IDE Borland C++ 5.02 từ khóa in đậm và có màu blue bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 8
  5. Tên (định danh) q Dùng để ñịnh danh các thành phần của chương trình q Tên biến, tên hàm, tên hằng, file, cấu trúc… q Gồm chữ, số, dấu gạch nối “_” q Độ dài tối đa 32 q Lưu ý: – không đuợc chứa kí tự trống (space), – không được bắt đầu bằng một chữ số, – không được trùng với từ khóa q Nên đặt tên một cách gợi nhớ, có ý nghĩa. q Tên chuẩn: một số tên có sẵn của trình biên dịch. Vd: x, hoten, a1, number_of_var, delta, TEN, … q C là ngôn ngữ phân biệt viết hoa, viết thường chính xác đến từng ký tự bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 9 Hằng, Biến, Biểu thức q Hằng: – Là ñại lượng có giá trị không thay ñổi được – Ví dụ: • 124 Là một hằng số • ‘D’ Là một hằng ký tự • “Lap trinh” Là một hằng chuỗi ký tự q Biến – Là ñại lượng có thể thay ñổi được giá trị (gán giá trị mới) q Biểu thức – Là công thức tính toán để có 1 giá trị theo quy tắc toán học – Gồm các toán hạng và các phép toán (toán tử) • Toán hạng: hằng, biến, hàm hoặc biểu thức khác. • Phép toán: Số học, luận lý, gán, ñiều kiện, lấy địa chỉ, tăng giảm bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 10
  6. Các phép toán C hỗ trợ q Số học: + , - , * , / , % q Luận lý: ==, !=, >, =,
  7. Các kiểu dữ liệu chuẩn Kiểu số Tên kiểu Độ lớn Phạm vi char 1 byte -128 127 unsigned char 1 byte 0 255 int 2 byte -32768 32767 unsigned int 2 byte 0 65535 short 2 byte 0 65535 long 4 byte - 231 231 - 1 unsigned long 4 byte - 231 232 - 1 float 4 byte 3.4e-38 3.4e38 double 8 byte 1.7e-308 1.7e308 long double 10 byte 3.4e-4932 1.1e4932 bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 13 Các kiểu dữ liệu chuẩn Kiểu ký tự Tên kiểu Độ lớn Phạm vi Gồm 256 ký tự có mã từ 0 255 ( char 1 byte xem Bảng mã ASCII ) Ví dụ: – Ký tự ’A’ có mã 65 – Ký tự ’0’ có mã 48 Các ký tự ñặc biệt: ’\0’ ký tự Null (có mã = 0) ’\n’ ký tự xuống dòng (new line) ’\t’ ký tự Tab bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 14
  8. Ép kiểu Cú pháp: (kiểu_mới) biểu thức hoặc kiểu_mới (biểu thức) Ví dụ: bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 15 Khai báo hằng Cú pháp #define TÊNHẰNG giátrị hoặc const kiểudữliệu TÊNHẰNG = giátrị; Ví dụ #define MAX 100 const int SOPT = 100; Lưu ý: hằng phải được khai báo trước khi sử dụng bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 16
  9. Khai báo biến Kết thúc bằng dấu chấm phẩy Cú pháp kiểudữliệu TÊNBIẾN; hoặc kiểudữliệu Biến1, Biến2,... ; hoặc kiểudữliệu TÊNBIẾN = giátrịbanđầu; Ví dụ int sole; float tbc, tongam; char Enter = ’\n’; Lưu ý: Biến có thể khai báo bất kỳ ñâu trong chương trình miễn làn trước khi sử dụng. bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 17 Cấu trúc chương trình C Chỉ thị tiền biên dịch Khai báo các hằng, biến Khai báo các hàm tự XD Thân chương trình chính Cài đặt các hàm đã khai báo ở trên bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 18
  10. Phép gán giá trị Cú pháp TênBiến = Biểu thức giá trị ; Ví dụ: Tại sao sai ? int x, y, z; x = 10; 10 = x; //sai x = 10 + y; 10 + y = x; //sai z = x + y; x + y = z; //sai bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 19 Các hàm toán học thông dụng Chỉ thị tiền biên dịch: #include sqrt(x) lấy căn bậc 2 exp(x) lấy e x log(x) lấy logex abs(x) lấy |x| (kết quả là số nguyên) fabs(x) lấy |x| (kết quả là số thực) pow(x, y) lấy xy ceil(x) lấy số nguyên gần x nhất floor(x) lấy số nguyên lớn nhất ≤ x Các biểu thức phức tạp phải sử dụng biến đổi toán học ñể có ñược biểu diễn tương ứng trong C bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 20
  11. Một số quy tắc viết chương trình q Đặt tên biến, hằng, hàm,… một cách gợi nhớ q Khi sử dụng biến, hằng cần kiểm tra lại xem biến hằng đó ñã ñược khai báo trước đó hay chưa ? q C là ngôn ngữ phân biệt hoa/thường phải kiểm tra kỹ từng ký tự khi viết q Loại bỏ các chỉ thị #include không cần thiết (để lại sẽ làm chậm quá trình biên dịch và tăng kích thước file *.exe sau biên dịch) q Viết chương trình theo cấu trúc khối (phân cấp thụt đầu dòng) q Chương trình viết xong chưa thể biết được đúng hay sai phải chạy thử với các bộ số liệu khác nhau (nên test thử với các bộ số liệu đặc biệt) bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 21 bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 22
  12. Xuất dữ liệu, hàm: printf q Thuộc thư viện “stdio.h” q Cú pháp: printf(“Xâu điều khiển”,[danh sách tham số]); q Ví dụ: bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 23 Hàm printf q Xâu ñiều khiển bao gồm 3 loại kí tự – Các kí tự ñiều khiển • \n sang dòng mới • \f sang trang mới • \b xóa kí tự bên trái • \t dấu Tab – Các kí tự ñể ñưa ra màn hình – Các kí tự ñịnh dạng và khuôn in • Công thức định dạng: %[-][w][.p]Kt • w = wide(độ rộng); p = precise(độ chính xác); Kt = Ký tự chuyển dạng (dạng hiển thị). Dấu trừ sẽ quy ñịnh canh lề trái thay vì canh lề phải • Ví dụ: %.2f %8d %s %-5c bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 24
  13. Hàm printf q Các ký tự chuyển dạng thường dùng Ký tự Ý nghĩa c In ra ở dạng ký tự char d In ra ở dạng số nguyên int u In ra ở dạng số nguyên unsigned int ld In ra ở dạng số nguyên long lu In ra ở dạng số nguyên unsigned long f In ra ở dạng số thực float s In ra ở dạng xâu ký tự x In ra ở dạng số nguyên hệ 16 (hecxa) o In ra ở dạng số nguyên hệ 8 e, E In ra rở dạng khoa học g, G In ra ở dạng số thực (bỏ các số 0 vô nghĩa) bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 25 Hàm printf q Ví dụ bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 26
  14. Hàm printf Viết Ý nghĩa q In các ký tự ñặc biệt \’ In ký tự dấu nháy đơn (‘) q Công thức định dạng \” In ký tự dấu nháy kép (“) %[-][w][.p]Kt \\ In ký tự backslash (\) – W: wide (độ rộng) \t In ký tự Tab – P: precse (độ chính xác) \b In lùi 1 vị trí – Kt: Ký tự chuyển dạng \n In xuống dòng mới q Giá trị của w – Nhỏ hơn hoặc bằng độ rộng thực tế in bình thường – Lớn hơn độ rộng thực tế (chèn thêm khoảng trống cho đủ ñộ rộng là w (nếu có dấu trừ chèn bên phải, ngược lại chèn bên trái) q Giá trị p: quy ñịnh làm tròn đến bao nhiêu chữ số ñằng sau chấm thập phân. bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 27 Hàm puts q Thư viện: “conio.h” q Công dụng: in ra màn hình 1 xâu ký tự q Ví dụ: bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 28
  15. Hàm sprintf q Thư viện: “stdio.h” q Công dụng: giống printf, chỉ khác ở ñiểm kết quả không xuất ra màn hình mà ñưa vào 1 biến xâu. q Ví dụ: bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 29 Nhập dữ liệu, hàm: scanf q Thuộc thư viện “stdio.h” q Cú pháp: scanf(“Xâu điều khiển”,[DS tham số]); – Xâu điều khiển: Cho phép định dạng dữ liệu nhập vào – Danh sách tham số: Là ñịa chỉ các biến cần nhập liệu q Sử dụng toán tử & ñể xác định địa chỉ các biến q Ví dụ: scanf(“%d%f%c”, &x, &y, &z); scanf(“%s”, &hoten); bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 30
  16. Hàm scanf q Không thông báo cho người dùng biết giá trị cần nhập là giá trị gì? phải kết hợp với lệnh xuất dữ liệu q Không nhận được xâu có dấu cách trống q Không xóa ký tự thừa trong bộ ñệm ảnh hưởng tới lện nhập phía sau. bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 31 Sử dụng fflush sau scanf Công dng: xóa những ký tự thừa còn dư lại trong bộ đệm của scanf bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 32
  17. Kết hợp nhập và xuất dữ liệu Kết quả chương trình ? bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 33 Hàm gets q Thư viện: “conio.h” q Công dụng: nhập vào 1 xâu ký tự q Ví dụ: Liệu có dùng gets nhập 1 số không? bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 34
  18. bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 35 Một số hàm nhập/xuất dữ liệu khác Hàm Ý nghĩa int getch() đợi nhập 1 ký tự từ bàn phím (không hiển thị ở màn hình) int getche() giống getch() nhưng hiển thị ở màn hình int putch() In ra màn hình 1 ký tự int kbhit() Kiểm tra xem có 1 phím bị nhấn không? cprintf() Giống printf nhưng có màu sắc gotoxy(x, y) chuyển tới vị trí (cột x, hàng y) bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 36
  19. Màu sắc khi xuất dữ liệu q Đặt màu nền textbackground(màu nền) Hằng màu Giá trị ý nghĩa q Đặt màu chữ textcolor(màu BLACK 0 Đen chữ) BLUE 1 Xanh dương GREEN 2 Xanh lá CYAN 3 Xanh ngọc RED 4 Đỏ MAGENTA 5 Tím BROWN 6 Nâu LIGHTGRAY 7 Xám bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 37 Bài tập - Nhập/xuất dữ liệu 1. Viết chương trình cho nhập các hệ số của phương trình bậc nhất 1 ẩn ax+b=0 (với a≠0) hãy in ra màn hình nghiệm của phương trình đã cho. 2. Viết chương trình hiển thị ra màn hình số tiền phải trả cho 1 cuộc gọi điện thoại N giây. Biết rằng cước gọi tính theo mỗi block là xñ, và 1 block bằng 6 giây. Các giá trị x, N nhập từ bàn phím. 3. Viết chương trình nhập tọa độ của 3 ñiểm A, B, C trên mặt phẳng. Tính và in ra màn hình chu vi, diện tích của tam giác ABC. 4. Viết chương trình nhập họ tên, hệ số lương của 1 nhân viên. Tính và in ra màn hình lương còn lĩnh của nhân viên đó sau khi trừ ñi các khoản: BHYT 1.5%, BH thất nghiệp 1% và ðảng phí 1% 5. Viết chương trình hiện ra màn hình thể tích của tứ diện ABCD biết rằng A, B, C có tọa độ nhập từ bàn phím (XA, YA) (XB, YB) (XC, YC) và chiều cao từ ñỉnh D xuống mặt phẳng ABC là h bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 38
  20. bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 39 Rẽ nhánh if q Cú pháp: if ( điều kiện) ; if ( điều kiện) ; else ; q Công dụng: - Thực hiện 1 trong 2 lệnh tùy thuộc vào điều kiện đúng/sai. - Nếu thực nhiện nhiều hơn 1 lệnh phải để trong cặp dấu { } bangtqh@utc2.edu.vn Tin học đại cương - Chương 4 40
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2