Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 87 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
87
Dung lượng
747,29 KB
Nội dung
Đề cương mơn: Lập trình Cơ Mục lục Chương Thuật toán Ví dụ Khái niệm Các đặc trưng thuật toán Phương pháp biểu diễn Bài tập luyện Chương Giới thiệu ngơn ngữ lập trình C++ 10 Lịch sử hình thành 10 Đặc điểm 11 Cấu trúc chương trình C++ 12 Một số ví dụ mẫu 13 Cài đặt chương trình 15 Soạn thảo chương trình 19 Thốt khỏi chương trình 20 Chương Các thành phần kiểu liệu 21 Các thành phần 21 Các kiểu liệu 21 Hằng 22 3.1 Khái niệm 22 3.2 Định nghĩa 22 Các phép toán C++ 23 Xuất nhập liệu 24 5.1 Xuất liệu (cout) 24 5.2 Nhập liệu (cin) 26 Chương Các cấu trúc điều khiển 27 Lệnh đơn lệnh phức 27 1.1 Lệnh đơn 27 1.2 Lệnh phức hay khối lệnh 27 Cấu trúc điều kiện if else 27 2.1 Dạng khuyết 27 2.2 Dạng đầy đủ 28 Cấu trúc lựa chọn: switch case 30 Các cấu trúc lặp 33 4.1 Cấu trúc lặp while 33 4.2 Cấu trúc lặp while 35 4.3 Cấu trúc lặp for 37 Câu lệnh break, continue, goto hàm exit 39 5.1 Câu lệnh break 39 5.2 Câu lệnh continue 40 5.3 Câu lệnh goto 40 5.4 Hàm exit 41 Chương Hàm 42 Khái niệm 42 Khai báo hàm 42 Đề cương mơn: Lập trình Cơ 2.1 Cú pháp khai báo nguyên mẫu hàm 42 2.2 Định nghĩa hàm 42 Kết trả hàm – Lệnh return 43 Lời gọi hàm Cách truyền tham số cho hàm 44 Đệ qui 45 5.1 Khái niệm 45 5.2 Ví dụ 45 Bài tập luyện: 45 Chương Mảng 47 Khái niệm 47 Khai báo mảng 47 2.1 Khai báo mảng 47 2.2 Truy xuất đến phần tử mảng 47 Khởi tạo mảng 48 Dùng mảng làm tham số 50 Với mảng hai chiều 52 5.1 Định nghĩa 52 5.2 Truy xuất phần tử mảng hai chiều 52 5.3 Khởi tạo giá trị mảng hai chiều 53 5.4 Ví dụ 54 Bài tập luyện 55 Chương Con trỏ 56 Khái niệm 56 Toán tử lấy địa (&) 56 Toán tử tham chiếu (*) 57 Khai báo biến kiểu trỏ 57 Các phép toán 58 5.1 Phép gán 58 5.2 Phép tăng giảm địa 58 5.3 Phép truy nhập nhớ 58 5.4 Phép so sánh 59 Con trỏ 59 Con trỏ mảng 59 Khởi tạo trỏ 60 Con trỏ trỏ tới trỏ 62 10 Con trỏ không kiểu 62 11 Con trỏ hàm 63 Chương Cấu trúc 65 Khái niệm cấu trúc 65 Khai báo cấu trúc 65 2.1 Kiểu cấu trúc 65 2.2 Khai báo thành phần (biến, mảng) kiểu cấu trúc 67 Truy cập đến thành phần cấu trúc 67 Ví dụ cấu trúc 68 Bài tập luyện: 71 Đề cương mơn: Lập trình Cơ Chương File 73 Khái niệm File 73 Tạo file đọc file 73 2.1 Khai báo trỏ trỏ đến tập tin 74 2.2 Mở tập tin 74 2.3 Các kiểu xử lý tệp thông dụng 75 2.4 Đóng tập tin 76 2.5 Kiểm tra đến cuối tập tin hay chưa 76 2.6 Các xử lý tập tin 76 2.7 Truy cập đến tập tin văn (text) 77 Tạo file nhị phân 80 Đọc file nhị phân 81 4.1 Ghi liệu lên tệp nhị phân 81 4.2 Đọc liệu từ tập tin nhị phân - Hàm fread() 81 4.3 Di chuyển trỏ tập tin - Hàm fseek() 81 Bài tập luyện 83 Tài liệu tham khảo 87 Đề cương mơn: Lập trình Cơ Chương Thuật tốn Ví dụ + Thuật tốn giải phương trình bậc 1, giải phương trình bậc + Thuật tốn tìm số lớn số a, b, c + Thuật tốn tính trung bình cộng số a, b, c, d + Thuật tốn tìm đường ngắn … Khái niệm Thuật ngữ thuật toán (Algorithm) từ viết tắt tên nhà toán học kỷ IX: Abu Ja’fa Mohammed ibn Musa al-Khowarizmi Đầu tiên, thuật toán hiểu quy tắc thực phép toán số học với số viết hệ thập phân Cùng với phát triển máy tính, khái niệm thuật toán hiểu theo nghĩa rộng Một định nghĩa hình thức thuật tốn nhà tốn học người Anh Alanh Turing đưa vào năm 1936 thơng q máy Turing Có thể nói lý thuyết thuật tốn hình thành từ Lý thuyết thuật toán liên quan đến vấn đề sau: + Giải thuật toán: Thay thuật toán chưa tốt thuật toán tốt + Triển khai thuật toán: Xây dựng ngơn ngữ thực máy tính để mã hóa thuật tốn Vậy, Thuật tốn dãy hữu hạn thao tác bố trí theo trình tự xác định, đề trước, nhằm giải toán định Thao tác hay cịn gọi tác vụ, phép tốn (Operation) hay lệnh (Command), thị (Instruction)… hành động cần thực chế thực thuật toán Mỗi thao tác biến đổi toán từ trạng thái trước (hay trạng thái nhập) sang trạng thái sau (hay trạng thái xuất) Thực tế thao tác thường sử dụng số đối tượng trạng thái nhập (các đối tượng nhập) sản sinh đối tượng trạng thái xuất (các đối tượng xuất) Quan hệ trạng thái xuất nhập cho thấy tác động thao tác Dãy thao tác thuật toán nối tiếp nhằm biến đổi toán từ trạng thái ban đầu đến trạng thái kết Mỗi thao tác phân tích thành thao tác đơn giản Đề cương mơn: Lập trình Cơ Trình tự thực thao tác phải xác định rõ ràng thuật toán Cùng tập hợp thao tác xếp đặt theo trình tự khác cho kết khác Các đặc trưng thuật tốn + Tính xác định: Các thao tác, đối tượng, phương tiện thuật toán phải có ý nghĩa rõ ràng, khơng gây nhầm lẫn Nói cách khác, hai chế hoạt động khác thực thuật toán, sử dụng đối tượng, phương tiện nhập phải cho kết + Tính dừng: Địi hỏi thuật tốn phải dừng cho kết sau số hữu hạn bước + Tính thuật tốn: Thuật tốn thuật toán cho kết thỏa mãn đặc tả thuật toán với trường hợp đối tượng, phương tiện nhập + Tính phổ dụng: Thuật tốn để giải lớp toán gồm nhiều cụ thể, lớp xác định đặc tả Dĩ nhiên có lớp tốn gồm Thuật tốn khơng cần sử dụng đối tượng, phương tiện nhập Phương pháp biểu diễn Thuật tốn diễn đạt nhiều hình thức, chẳng hạn dạng lưu đồ, dạng ngôn ngữ tự nhiên, dạng mã giả ngơn ngữ lập trình khác a Dạng ngơn ngữ tự nhiên: Thuật tốn trình bày dạng ngơn ngữ tự nhiên theo trình tự bước thực thuật tốn b Dạng ngơn ngữ lập trình: Dùng cấu trúc lệnh, liệu ngơn ngữ lập trình để mơ tả c Dạng mã giả: Thuật tốn trình bày dạng văn ngôn ngữ tự nhiên dễ hiểu khó cài đặt Dùng ngơn ngữ lập trình để diễn tả phức tạp, khó hiểu Thơng thường thuật tốn trao đổi dạng văn – không ràng buộc nhiều vào cú pháp xác định ngôn ngữ lập trình, tuân theo số quy ước ban đầu – ta gọi dạng mã giả Tùy theo việc định hướng cài đặt thuật tốn theo ngơn ngữ lập trình ta diễn đạt thuật tốn gần với ngôn ngữ d Dạng lưu đồ: Trong phương pháp biểu diễn, chủ yếu nghiên cứu phương pháp biểu diễn theo dạng Đề cương mơn: Lập trình Cơ Dạng lưu đồ dùng hình vẽ (có quy ước) để diễn đạt thuật tốn Lưu đồ cho hình ảnh trực quan tổng thể thuật toán, thường sử dụng nhiều Các ký hiệu sử dụng phương pháp biểu diễn thuật toán lưu đồ: STT Ký hiệu Giải thích Bắt đầu kết thúc chương trình Điểm nối, đường (luồng xử lý) Điều khiển lựa chọn Thao tác nhập, xuất Thao tác xử lý tính tốn Trả giá trị (return) Điểm nối liên kết (sử dụng lưu đồ vượt trang) Ví dụ 1: Đọc thông tin tên, tuối lưu lại người có tuổi 50 Lưu đồ: Đề cương mơn: Lập trình Cơ Bắt đầu Đọc tên, tuổi Nếu tuổi > 50? Sai Đúng Thêm vào danh sách Là người cuối cùng? Sai Đúng Kết thúc Ví dụ 2: dụ: Nhập vào số nguyên a, b, c xuất hình với giá trị số tăng lên Đề cương môn: Lập trình Cơ Bắt đầu Nhập a, b, c a= a +1 b=b+1 c=c+1 Xuất a, b, c Kết thúc Chú ý vẽ lưu đồ: + Trước tiên tập trung vẽ số đường lưu đồ + Thêm vào tất nhánh vòng lặp + Một lưu đồ có điểm Bắt đầu điểm kết thúc + Mỗi bước chương trình khơng cần thể lưu đồ + Lưu đồ cần phải đáp ứng yêu cầu: người lập trình khác hiểu lưu đồ cách dễ dàng Bài tập luyện Vẽ lưu đồ thuật tốn cho tốn sau: Bài 1: Tìm số lớn số a, b, c Bài 2: Giải phương trình bậc 1: ax + b = (a ≠ 0) Bài 3: Giải phương trình bậc 2: ax2 + bx + c = (a ≠ 0) Đề cương mơn: Lập trình Cơ Bài 4: Nhập vào hai số x, y Xuất hình tổng, hiệu, tích, thương hai số Bài 5: Nhập vào số nguyên n, kiểm tra xem n chẵn hay lẻ xuất hình Bài 6: Nhập vào ba cạnh a, b, c tam giác Xuất hình tam giác thuộc loại tam giác gì? (Thường, cân, vng, hay vng cân) Bài 7: Tính n!, với n ≥ Đề cương mơn: Lập trình Cơ Chương Giới thiệu ngơn ngữ lập trình C++ Lịch sử hình thành Ngơn ngữ lập trình C Dennis Ritchie nghĩ ơng làm việc AT&T Bell Laboratories vào năm 1972 Không phải ngẫu nhiên mà Dennis Ritchie nghĩ C Vào thời gian ơng vài đồng nghiệp có nhiệm vụ thiết kế hệ điều hành mà ngày biết đến hệ điều hành UNIX Trong trình thiết kế, Dennis Ritchie nhận thấy tất ngơn ngữ có lúc đó, khơng có ngơn ngữ thích hợp để họ sử dụng vào đồ án họ Cuối Dennis Ritchie định làm ngôn ngữ để giải vấn đề mà họ gặp phải Dennis Ritchie đẵ tham khảo nhiều ngơn ngữ có từ trước, đặc biệt ngơn ngữ B Ken Thompson làm việc Bell Labs nghĩ Rất nhiều phần ngôn ngữ ơng đưa vào C Chính mà Dennis Ritchie chọn chữ B (tức C) để đặt tên cho ngôn ngữ Vì C ngơn ngữ mạnh có tính linh hoạt, nhanh chóng sử dụng cách rộng rãi, vượt khỏi phạm vi Bell Labs Các lập trình viên khắp nơi bắt đầu sử dụng để viết tất loại chương trình Tuy nhiên, nhiều tổ chức nhanh chóng đưa versions C riêng họ khác biệt tinh tế phần bổ sung bắt đầu khiến lập trình viên đau đầu Vì vào năm 1983, Viện tiêu chuẩn Quốc gia Hoa Kỳ (the American National Standards Institute - ANSI) thành lập ủy ban để đưa tiêu chuẩn cho C, biết với tên ANSI C Trừ vài ngoại lệ, tất trình dịch C đại cố gắng theo sát tiêu chuẩn C++ biết đến ngôn ngữ bao trùm lên C Bjarne Stroustrup sáng tác năm 1980 phịng thí nghiệm Bell bang New Jersey, Mỹ Ban đầu ông đặt tên cho “C with classes” (C với lớp) Tuy nhiên đến năm 1983 ơng đổi tên thành C++, ++ tốn tử tăng thêm C Mặc dù C ngôn ngữ giới lập trình chun nghiệp u thích song có hạn chế Nếu số dịng lệnh vượt 25000 cơng việc trở nên phức tạp C++ tạo để xóa bỏ chướng ngại Điều C++ cho phép người lập trình hiểu quản lý chương trình lớn, phức tạp 10 Đề cương mơn: Lập trình Cơ Chương File Khái niệm File Tệp tin hay tệp liệu tập hợp liệu có liên quan với có kiểu nhóm lại thành dãy Chúng thường chứa thiết bị nhớ máy tính (đĩa mềm, đĩa cứng,…) tên Tệp kiểu liệu có cấu trúc Định nghĩa tệp có phần giống mảng chỗ chúng tập hợp phần tử liệu có kiểu Song mảng định nghĩa khai báo chương trình với số phần tử xác định số phần tử tệp không xác định định nghĩa Tệp chứa nhớ ngồi, điều có nghĩa tệp lưu trữ để dùng nhiều lần tồn chương trình kết thúc điện Có loại tập tin: + Tập tin văn bản: tập tin dùng để ghi ký tự lên đĩa theo dòng Tệp tin văn tệp chứa phần tử ký tự chữ (viết hoa, viết thường); chữ số: ;0’, ‘1’, …, ‘9’; dấu chấm câu, không kể ký tự điều khiển Các ký tự tổ chức thành dòng với dấu kết thúc dòng CR ( Carriage Return - Về đầu dòng, mã Ascii 13 )= ‘\r’ LF (Line Feed - Xuống dòng, mã Ascii 10) = ‘\n’, tệp văn dùng ký tự ^Z (xác định tổ hợp phím Ctrl_Z) có mã ASCII 26 để làm ký hiệu kết thúc tệp Vì vậy, tệp văn đọc hình, soạn thảo với phần mềm soạn thảo văn + Tập tin nhị phân: tập tin dùng để ghi cấu trúc dạng nhị phân (được mã hóa) Tệp tin nhị phân chứa nhiều liệu có mã điều khiển ký tự có mã ASCII từ đến 31 Nếu xâu ký tự ghi tệp nhị phân kí hiệu hết dịng cịn có LF = ‘\n’, khơng có ký tự CR = ‘\r’ Tạo file đọc file Quá trình thao tác tập tin thông qua bước: 73 Đề cương mơn: Lập trình Cơ Bước 1: Khai báo trỏ trỏ đến tập tin Bước 2: Mở tập tin Bước 3: Các xử lý tập tin Bước 4: Đóng tập tin 2.1 Khai báo trỏ trỏ đến tập tin Cú pháp: FILE *Tên_biến; Ví dụ: FILE *f; //Khai báo biến trỏ file f; FILE *vb,*np; //Khai báo biến trỏ tệp Chú ý: + Trước khai báo trỏ trỏ đến tập tin, cần khai báo thư viện: stdio.h + Mỗi tệp kết thúc dấu hiệu đặc biệt để báo hiệu hết tệp, hay gọi EOF (End of File) Giá trị EOF UNIX định nghĩa -1, chương trình dịch C/C++ khác có giá trị khác + C/C++ có hàm chuẩn feof, theo kiểu Boolean, với tham số biến tệp để thử xem cửa sổ đặt vào vị trí kết thúc tệp chưa Nếu cửa sổ cịn chưa trỏ vào phần tử cuối tệp feof có giá trị False, tức Sử dụng hàm feof() an tồn xác 2.2 Mở tập tin Cấu trúc: Biến_tệp = fopen (,); Ví dụ 1: FILE *f; //Khai báo biến trỏ f f = fopen (“C:\\VD1.txt”, “rt”); Ví dụ 2: Mở tập tin tên TEST.txt để ghi FILE *f; f = fopen(“TEST.txt”, “w”); if (f!=NULL) { /* Các câu lệnh để thao tác với tập tin*/ /* Đóng tập tin*/ } 74 Đề cương mơn: Lập trình Cơ Trong ví dụ trên, ta có sử dụng câu lệnh kiểm tra điều kiện để xác định mở tập tin có thành cơng hay khơng? Nếu mở tập tin để ghi, tập tin tồn tập tin bị xóa tập tin tạo Nếu ta muốn ghi nối liệu, ta phải sử dụng chế độ “a” Khi mở với chế độ đọc, tập tin phải tồn rồi, không lỗi xuất 2.3 Các kiểu xử lý tệp thông dụng + Cho tệp văn bản: STT Kiểu Ý nghĩa Mở tệp để đọc theo kiểu văn Tệp cần phải tồn r, rt w, wt Mở tệp để ghi theo kiểu văn Nếu tệp tồn bị xóa a, at Mở tệp để ghi bổ sung theo kiểu văn Nếu tệp chưa tồn tạo tệp r+ Mở tệp để đọc theo kiểu văn Tệp phải tồn w+ Mở tệp để ghi theo kiểu văn Tệp phải tồn a+ Mở tệp để đọc/ghi bổ sung theo kiểu văn Nếu tệp chưa tồn tạo tệp + Cho tệp nhị phân: STT Kiểu Ý nghĩa rb Mở tệp để đọc theo kiểu nhị phân Tệp cần phải tồn wb Mở tệp để ghi theo kiểu nhị phân Nếu tệp tồn bị xóa ab Mở tệp để ghi bổ sung theo kiểu nhị phân Nếu tệp chưa tồn tạo tệp r+ b Mở tệp để đọc theo kiểu văn Tệp phải tồn w+ b Mở tệp để ghi theo kiểu văn Tệp phải tồn a+ b Mở tệp để đọc/ghi bổ sung theo kiểu văn Nếu tệp chưa tồn tạo tệp 75 Đề cương mơn: Lập trình Cơ 2.4 Đóng tập tin Hàm fclose() dùng để đóng tập tin mở hàm fopen() Hàm ghi liệu lại vùng đệm vào tập tin đóng lại tập tin Cú pháp: int fclose(FILE *f) Trong f trỏ tập tin mở hàm fopen() Giá trị trả hàm báo việc đóng tập tin thành cơng Hàm trả EOF có xuất lỗi Ngồi ra, ta cịn sử dụng hàm fcloseall() để đóng tất tập tin lại Cú pháp: int fcloseall() Kết trả hàm tổng số tập tin đóng lại Nếu khơng thành công, kết trả EOF 2.5 Kiểm tra đến cuối tập tin hay chưa Cú pháp: int feof(FILE *f) Ý nghĩa: Kiểm tra xem chạm tới cuối tập tin hay chưa trả EOF cuối tập tin chạm tới, ngược lại trả 2.6 Các xử lý tập tin + Các hàm để đọc tập tin văn STT Ý nghĩa Tên hàm fscanf(FILE *tên_CT,các tham biến) fgets(vùng nhớ,kích thước tối đa, FILE *tên_CT) getc(FILE *tên_CT) Đọc liệu từ tập tin Đọc chuỗi ký tự từ tập tin với kích thước tối đa cho phép gặp ký tự xuống dòng Đọc ký tự từ tập tin mở + Các hàm để ghi tập tin văn STT Ý nghĩa Tên hàm fprintf(FILE *tên_CT,các tham biến) Ghi liệu vào tập tin fputs(chuỗi ký tự, FILE *tên_CT) Ghi chuỗi ký tự vào tập tin mở + Các hàm để đọc tập tin nhị phân STT Ý nghĩa Tên hàm fread(ptr,sizeof,len, FILE *tên_CT) 76 ptr: vùng nhớ để lưu trữ liệu đọc sizeof: kích thước nhớ, tính Đề cương mơn: Lập trình Cơ byte len: độ dài liệu cần đọc FILE: đọc từ tập tin nhị phân + Các hàm để ghi tập tin nhị phân STT Tên hàm Ý nghĩa ptr: vùng nhớ để lưu trữ liệu đọc sizeof: kích thước nhớ, tính fwirte(&ptr,sizeof,len, FILE *tên_CT) byte len: độ dài liệu cần đọc FILE: đọc từ tập tin nhị phân Ở phần tiếp theo, đề cập kỹ đến hàm qua ví dụ 2.7 Truy cập đến tập tin văn (text) Ghi liệu lên tập tin văn + Hàm putc() Hàm dùng để ghi ký tự lên tập tin văn mở để làm việc Cú pháp: int putc(int c, FILE *f) Trong đó, tham số c chứa mã Ascii ký tự Mã ghi lên tập tin liên kết với trỏ f Hàm trả EOF gặp lỗi + Hàm fputs() Hàm dùng để ghi chuỗi ký tự chứa vùng đệm lên tập tin văn Cú pháp:int puts(const char *buffer, FILE *f) Trong đó, buffer trỏ có kiểu char đến vị trí chuỗi ký tự ghi vào Hàm trả giá trị buffer chứa chuỗi rỗng trả EOF gặp lỗi + Hàm fprintf() Hàm dùng để ghi liệu có định dạng lên tập tin văn Cú pháp: fprintf(FILE *f, const char *format, varexpr) Trong đó:format: chuỗi định dạng, varexpr: danh sách biểu thức, biểu thức cách dấu phẩy (,) Ví dụ: Viết chương trình ghi chuỗi ký tự lên tập tin văn D:\\Baihat.txt #include #include int main() 77 Đề cương mơn: Lập trình Cơ { FILE *f; clrscr(); f=fopen("D:\\Baihat.txt","r+"); if (f!=NULL) { fputs("Em oi Ha Noi pho.\n",f); fputs("Ta em, mui hoang lan; ta em, mui hoa sua.",f); fclose(f); } getch(); return 0; } Nội dung tập tin Baihat.txt mở trình soạn thảo văn Notepad: Đọc liệu từ tập tin văn + Hàm getc() Hàm dùng để đọc liệu từ tập tin văn mở để làm việc Cú pháp: int getc(FILE *f) Hàm trả mã Ascii ký tự (kể EOF) tập tin liên kết với trỏ f + Hàm fgets() Cú pháp: char *fgets(char *buffer, int n, FILE *f) Hàm dùng để đọc chuỗi ký tự từ tập tin văn mở liên kết với trỏ f đọc đủ n ký tự gặp ký tự xuống dòng ‘\n’ (ký tự đưa vào chuỗi kết quả) hay gặp ký tự kết thúc EOF (ký tự không đưa vào chuỗi kết quả) 78 Đề cương mơn: Lập trình Cơ Trong đó: - buffer (vùng đệm): trỏ có kiểu char đến nhớ đủ lớn chứa ký tự nhận - n: giá trị nguyên độ dài lớn chuỗi ký tự nhận - f: trỏ liên kết với tập tin - Ký tự NULL (‘\0’) tự động thêm vào cuối chuỗi kết lưu vùng đêm - Hàm trả địa vùng đệm không gặp lỗi chưa gặp ký tự kết thúc EOF Ngược lại, hàm trả giá trị NULL + Hàm fscanf() Hàm dùng để đọc liệu từ tập tin văn vào danh sách biến theo định dạng Cú pháp:fscanf(FILE *f, const char *format, varlist) Trong đó: format: chuỗi định dạng (giống hàm scanf()); varlist: danh sách biến biến cách dấu phẩy (,) Ví dụ: Viết chương trình chép tập tin D:\Baihat.txt sang tập tin D:\Baica.txt #include #include int main() { FILE *f1,*f2; clrscr(); f1=fopen("D:\\Baihat.txt","rt"); f2=fopen("D:\\Baica.txt","wt"); if (f1!=NULL && f2!=NULL) { int ch=fgetc(f1); while (! feof(f1)) { fputc(ch,f2); ch=fgetc(f1); } fcloseall(); } 79 Đề cương mơn: Lập trình Cơ getch(); return 0; } Nội dung tập tin Baica.txt mở trình soạn thảo văn Notepad: Chú ý: Hai tệp “Baihat.txt” “Baica.txt” có ổ D: Tạo file nhị phân Sau mở tệp xong với chế độ xử lý w (writing), tệp rỗng chưa có phần tử nào, cửa sổ tệp khơng có giá trị xác định trỏ vào cuối tệp (EOF) Đồng thời cần lưu ý mở tệp nhớ mà có sẵn tệp có tên trùng với tên tệp mở tệp cũ bị xóa Ví dụ: Tạo tệp tin có 100 phần tử có giá trị từ đến 100: #include main() { char filename[21]; int i; long num; FILE *f; printf (“Tên tập tin cần tạo là: “); scanf (“%20s”, filename); f = fopen (filename,”wb”); for (i = 1; i